class تعريف صنف
آخر تحديث: 2026-09-22
class تعريف صنف
تعريف class نوع جديد؛ يدعم الوراثة المفردة والمتعددة.
| التصنيف | الكلمات المفتاحية والعبارات |
|---|---|
| النوع | كلمة مفتاحية / عبارة |
| إصدار بايثون | all |
📝 الصياغة
class Name(Base1, Base2, ...):
body
▶ مثال
عدّل الكود واضغط تشغيل لرؤية النتيجة في لوحة المخرجات:
المخرجات:
woof
🏷️ كلمات مفتاحية / عبارات ذات صلة
💡 حالات ذات صلة
المزيد من الحالات قادم قريباً — تابعونا.
❓ أسئلة شائعة
Qلماذا يجب أن يكون المعامِل الأول للطريقة `self`؟
A`self` يشير إلى النسخة الحالية. عند استدعاء طريقة نسخة، تمرر بايثون النسخة كأول وسيط تلقائيًا. حذف `self` يسبب خطأ «missing 1 required positional argument».
Qهل `__init__` منشئ (constructor)؟
Aبالمعنى الدقيق هو طريقة تهيئة نسخة: يُستدعى بعد إنشاء الكائن لضبط حالته الأولية (`self.x = ...`). الطريقة المسؤولة فعليًا عن تخصيص الذاكرة وإنشاء الكائن هي `__new__`.
Qما الفرق بين سمات الفئة وسمات النسخة؟
Aالسمات المعرَّفة في جسم الفئة والمُتاحة عبر اسم الفئة أو نسخة منها هي سمات فئة، مشتركة بين جميع النسخ. أما السمات المخصصة داخل `__init__` عبر `self.x =` فهي سمات نسخة، مستقلة لكل نسخة. عند تعارض الأسماء، تحجب سمة النسخة سمة الفئة.