• 0

ما هي استخدامات __new__ و __init__ ؟

بدأت بتعلم البرمجة باستخدام الأصناف منذ مدة بلغة البايثون وأريد أن أعرف استخدامات __new__ و __init__ ولماذا تأتي دائما __new__ قبل __init__ ؟ وما الفرق بينهما ؟

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

قم باستخدام __new__ عندما تحتاج إلى التحكم بإنشاء مثيل جديد، واستخدم __init__ عندما تريد أن تتحكم بتهيئة (initialization) المثيل الجديد.
إن __new__ هي أول خطوة من عملية إنشاء المثيل، حيث يتم استدعائها أولا وهي المسؤولة عن إرجاع المثيل الجديد الخاص بصنفك. في المقابل، لن تقوم __init__ بإرجاع أي شيء، فهي مسؤولة فقط عن عملية تهيئة المثيل بعد أن يتم إنشاؤه.
بشكل عام، لا يجب أن تتجاوز __new__ إلا في حالة إنشاء صنف فرعي لنوع غير قابل للتغيير مثل str أو int أو unicode أو tuple.
المصدر

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن