الانتقال إلى المحتوى الرئيسي

كم عدد الصانعين الذين يمكن أن يكون للفئة في بايثون: أمثلة التفسير والاستخدام

في لغة برمجة بايثون ، الطبقات هي اللبنات الأساسية للبرمجة الشيئية. واحدة من السمات الهامة للفئات هي القدرة على تحديد المنشئين. المنشئ هو طريقة لفئة يتم استدعاؤها تلقائيا عند إنشاء كائن جديد من هذه الفئة.

عادة ما تستخدم المنشئات لتهيئة القيم الأولية لسمات الكائن. في بايثون ، يتم استخدام طريقة خاصة تسمى "__الحرف الأول__" لتعريف المنشئ. عند إنشاء كائن ، يتم استدعاء المنشئ تلقائيا ، ويمكننا تمرير قيم السمات الأولية إليه.

ومع ذلك ، في بايثون ، يمكن أن يكون للفئة عدد غير محدود من المنشئين. هذا يسمح لنا بتحديد منشئات مختلفة بمعلمات مختلفة وتنفيذ طرق مختلفة لتهيئة الكائنات.

على سبيل المثال ، لنفترض أن لدينا فصلا طلابيا ونريد أن نكون قادرين على إنشاء كائنات من هذا الفصل من خلال تحديد سمات مختلفة مثل الاسم والعمر ومتوسط الدرجات. يمكننا تحديد العديد من المنشئين ، واحد منهم يقبل فقط اسم الطالب ، والثاني-الاسم والعمر ، والثالث-جميع السمات الثلاث. سيسمح لنا ذلك بالعمل بمرونة مع كائنات فئة الطلاب اعتمادا على احتياجاتنا.

لذلك ، فإن عدد الصانعين فئة يمكن أن يكون في بيثون غير محدود. يتيح لنا ذلك استخدام معلمات مختلفة لتهيئة الكائنات ويوفر قدرا أكبر من المرونة والراحة في استخدام الفئات.

  1. بناة فئة بايثون: ما هم وكم منهم يمكن أن يكون هناك
  2. تحديد منشئ فئة
  3. كم عدد الصانعين يمكن أن يكون فئة في بيثون?
  4. سؤال وجواب
  5. ما هو الحد الأقصى لعدد الصانعين فئة يمكن أن يكون في بيثون?
  6. هل من الممكن إنشاء منشئات متعددة في الفصل?
  7. لماذا نحتاج منشئات متعددة في فئة?

بناة فئة بايثون: ما هم وكم منهم يمكن أن يكون هناك

في البرمجة الشيئية (أوب) ، فئة هي الوحدة الأساسية التي تسمح لك لوصف هيكل وسلوك الكائنات. يمكن أن تحتوي الفئات على وظائف تسمى الأساليب التي تحدد كيفية تفاعل كائنات هذه الفئة مع بعضها البعض ومع بياناتها.

أحد العناصر المهمة في الفصل هو المنشئ. المنشئ هو طريقة يتم استدعاؤها عند إنشاء كائن فئة جديد. يتم استخدامه لتهيئة سمات الكائن (المتغيرات التي تخزن بيانات الكائن) وتعيين القيم الأولية.

في بايثون ، يتم تمثيل المنشئ بطريقة تسمى _ _ الحرف الأول_ _ ، والتي يتم استدعاؤها تلقائيا في كل مرة يتم فيها إنشاء كائن. يمكن أن يحتوي المنشئ على معلمات يمكن استخدامها لتهيئة سمات كائن.

يعتمد عدد المنشئين الذين يمكن أن يكون للفئة في بايثون على تنفيذها. بشكل عام ، يمكن أن يكون للفئة منشئ واحد فقط. ومع ذلك ، توفر بايثون إمكانية إنشاء منشئات متعددة باستخدام مفهوم طريقة التحميل الزائد — اعتمادا على الحجج التي تم تمريرها ، سيتم اختيار المنشئ المناسب.

تستخدم بايثون وحدة كلاسميثود لإنشاء منشئات محملة بشكل زائد. يسمح لك بإنشاء طريقة فئة يمكن أن تأخذ عددا مختلفا من الوسائط وإرجاع كائن فئة جديد.

على سبيل المثال ، ضع في اعتبارك فئة "الشخص" ، التي تحتوي على منشئين مختلفين:

فئةالصانعين
شخص
  • __ الحرف الأول _ _ (الذات ، الاسم ، العمر)
  • من_الولادة _ العام (كلس ، الاسم ، الميلاد _ العام)

يأخذ المنشئ الأول "_ _ الحرف الأول _ _ " معلمتين-الاسم والعمر-ويقوم بتهيئة سمات الكائن. يقبل المنشئ الثاني" من_الولادة _ العام " ثلاث معلمات-الاسم وسنة الميلاد والسنة الحالية (مقبولة باستخدام وحدة التاريخ والوقت). يحسب العمر بناء على سنة الميلاد والسنة الحالية ، ثم يقوم بتهيئة سمات الكائن.

يسمح لك هذان المنشئان بإنشاء كائنات من فئة" الشخص " باستخدام مجموعات مختلفة من الوسائط. على سبيل المثال:

  • شخص1 = شخص ("جون" ، 25)
  • شخص2 = شخص.من_الولادة ("أليس" ، 1990)

في الحالة الأولى ، يتم إنشاء كائن "شخص1" باسم "جون" والعمر "25". في الحالة الثانية ، يتم إنشاء كائن" شخص 2 "باسم" أليس " وعمر محسوب بناء على سنة الميلاد.

وأخيرا ، في بيثون ، يمكنك استخدام المنشئات لتهيئة سمات كائن فئة. يمكن أن يكون للفئة منشئ افتراضي واحد فقط ، ولكن باستخدام طريقة التحميل الزائد ، يمكنك إنشاء منشئات متعددة بقوائم وسيطة مختلفة.

تحديد منشئ فئة

في برمجة بايثون ، منشئ الفئة هو طريقة خاصة يتم استدعاؤها تلقائيا عند إنشاء مثيل جديد لفئة. يتم استخدامه لتهيئة القيم الأولية لسمات الكائن.

يتم تعريف منشئ الفئة باستخدام طريقة خاصة تسمى _ _ الحرف الأول__. يتم استدعاء هذه الطريقة تلقائيا عند إنشاء كل كائن جديد من هذه الفئة.

بناء الجملة لتعريف منشئ فئة كما يلي:

اسم الفئة:

ديف _ _ الحرف الأول__(ذاتي, المعلمة 1, المعلمة 2,...):

# رمز تهيئة الكائن

أين:

  • كلاسنام هو اسم الفئة التي يتم تعريف منشئ
  • الذات هي معلمة تشير إلى كائن فئة معين وتسمح لك بالوصول إلى سماتها وطرقها
  • المعلمة 1, المعلمة 2,... - المعلمات التي يتم تمريرها إلى منشئ تهيئة سمات الكائن الفئة

وهكذا ، عند إنشاء مثيل جديد من فئة كلاسنام ، سيتم استدعاء__ إينيت _ _ منشئ تلقائيا ، وسيتم استخدام المعلمات مرت لتهيئة سمات الكائن.

مثال:

شخص الطبقة:

ديف _ _ الحرف الأول _ _ (الذات ، الاسم ، العمر):

self.name = الاسم

النفس.العمر = العمر

في هذا المثال ، يأخذ منشئ فئة الشخص معلمتين-الاسم والعمر. يقوم بتهيئة سمات الاسم والعمر لكائن فئة الشخص مع القيم المقابلة للمعلمات التي تم تمريرها.

كم عدد الصانعين يمكن أن يكون فئة في بيثون?

في بايثون ، يمكن أن يكون للفئة منشئ واحد فقط ، وهو ما يسمى " _ _ الحرف الأول__". يقوم بتهيئة كائن الفئة وسيتم استدعاؤه عند إنشاء كل مثيل جديد للفئة.

يمكن للمنشئ قبول أي عدد من المعلمات ، بما في ذلك المعلمات الافتراضية. يتم استخدامه لتهيئة سمات كائن فئة ، وتعيين القيم الأولية ، وتنفيذ العمليات الضرورية الأخرى. سيتم تمرير المعلمات التي تم تمريرها عند إنشاء مثيل للفئة إلى المنشئ ويمكن استخدامها لتهيئة السمات.

مثال على استخدام منشئ في فئة:

شخص الطبقة:

def __init__(self, name, age):

self.name = name

self.age = age

person1 = Person("Иван", 25)

person2 = Person("Мария", 30)

print(person1.name) # Иван

print(person1.age) # 25

print(person2.name) # Мария

print(person2.age) # 30

В приведенном примере класс «Person» имеет конструктор «__init__», который принимает параметры «name» и «age». عند إنشاء مثيل لفئة "الشخص 1" ، يتم تمرير القيم" إيفان " و 25 ، على التوالي ، إلى المنشئ. يتم استخدام قيم هذه المعلمات لتهيئة سمات" الاسم "و" العمر "لكائن" الشخص 1". يتم أيضا إنشاء مثيل لفئة "الشخص 2" بقيم معلمات أخرى.

من المهم ملاحظة أنه بشكل افتراضي لا يقوم المنشئ "__الحرف الأول__" بإرجاع القيم. إذا كنت بحاجة إلى إرجاع كائن من المنشئ ، فيمكنك إنشاء طريقة تؤدي هذه المهمة.

سؤال وجواب

ما هو الحد الأقصى لعدد الصانعين فئة يمكن أن يكون في بيثون?

في بايثون ، يمكن أن يكون للفئة منشئ واحد فقط ، وهو ما يسمى __الحرف الأول__().

هل من الممكن إنشاء منشئات متعددة في الفصل?

في بايثون ، يمكن أن يكون للفئة منشئ واحد فقط. ومع ذلك ، يمكنك استخدام معلمات وقيم وسيطة مختلفة في المنشئ لتحقيق نتائج مختلفة عند إنشاء مثيلات للفئة.

لماذا نحتاج منشئات متعددة في فئة?

يمكن أن تكون المنشئات المتعددة في الفصل مفيدة لحالات الاستخدام المختلفة. على سبيل المثال ، يمكنك إنشاء منشئ يقبل فقط بعض الوسائط ويضع الباقي على القيم الافتراضية. أيضا ، يمكن استخدام المنشئات لإنشاء مثيلات لفئة باستخدام مجموعات مختلفة من المعلمات لتسهيل إنشاء الكائنات.