3 תשובות
זה הבנאי של המחלקה, בו מתבצע האתחול של האובייקט ושל כל השדות שבו.
שואל השאלה:
עברית?
סתם תסביר לי בבקשה ממש מהבסיס
אנונימי
לכל מחלקה יש שדות משלה. ברגע שנוצר אובייקט של המחלקה, השדות של המחלקה יאותחלו בהתאם לקלט שניתן לאובייקט. האתחול הזה מתבצע באמצעות מתודה מיוחדת שהיא בנאי המחלקה. הבנאי מופעל אוטומטית שנוצר אובייקט של המחלקה. בפייתון, הבנאי הוא מתודה מיוחדת שהיא בעצם ה __init__. המתודה הזו תקבל כקלט את המשתנים של המחלקה ובתוך הבנאי הם יאותחלו. לדוגמה, אני עכשיו עושה בנאי למחלקה שמייצגת נקודה במערכת צירים.
def __init__(self,x,y)
self.x=x
self.y=y

הבנאי קיבל כקלט שלושה פרמטרים. האובייקט עצמו(self), איקס ו-y. בפייתון כל מחלקה חייבת לקבל את עצמה כקלט בבנאי, משהו מטומטם לדעתי שקיים רק בשפה הזו. בתוך הבנאי מתבצע אתחול על ידי self.x ו-self.y וניתן להם הערך שהתקבל כקלט בבנאי.
אתה יכול לחפש עוד דוגמאות כדי להבין איך זה עובד, זה משהו ממש פשוט