في البرمجة كائنية التوجه ، الوراثة (بالإنجليزية: Inheritance) هي طريقة لتكوين أصناف Class جديدة بإستخدام أصناف معرفة مسبقاً. الأصناف الجديدة والتي تعرف بالأصناف المشتقة Derived Class تأخذ (أو ترث) خصائص وأفعال الأصناف الموجودة مسبقا. تهدف الوراثة إلى المساعدة في إعادة استخدام الشيفرات الموجودة مسبقاً بدون تعديلات أو بتعديلات طفيفة.