14 תשובות
בעיקרון אני מתכנתת java אבל לפעמים סוגריים זה חלק מנוסחא כאילו כמו בהצהרות נגיד
זה הנתונים שאת מכניסה כדי לייצר את האובייקט, כמו נגיד אם את רוצה ליצור דלי של 8 ליטר, והאינישילייזור מקבל int עבור כמה ליטרים יהיה הדלי.
אז את צריכה להכניס 8 לסוגריים
אז את צריכה להכניס 8 לסוגריים
שואל השאלה:
ג'אווה זה לא אותו דבר? לא הבנתי, מה זאת אומרת חלק מהנוסחא? מה זאת אומרת הצהרה?
לפעמים אפשר להשתמש בסוגריים לא? אז מה אפשר להכניס לשם?
ג'אווה זה לא אותו דבר? לא הבנתי, מה זאת אומרת חלק מהנוסחא? מה זאת אומרת הצהרה?
לפעמים אפשר להשתמש בסוגריים לא? אז מה אפשר להכניס לשם?
קריאה לאובייקט היא למעשה קריאה לבנאי של האובייקט, שהוא כמובן פונקציה
לכן יש צורך סינטקטי בסוגריים בנוסף לארגומנט נוסף אם הבנאי משתמש בו, סתם לדוגמה אם הבנאי של person היה מקבל int בשם age שמייצג גיל זה היה נראה ככה
person1 = new person(1)
תקף לכל אובייקט שנוצר באמצעות קריאה לבנאי
לכן יש צורך סינטקטי בסוגריים בנוסף לארגומנט נוסף אם הבנאי משתמש בו, סתם לדוגמה אם הבנאי של person היה מקבל int בשם age שמייצג גיל זה היה נראה ככה
person1 = new person(1)
תקף לכל אובייקט שנוצר באמצעות קריאה לבנאי
שואל השאלה:
וואי וואי תזכרו שאני רק מתחילה, אפשר בשפה יותר פשוטה? חח
וואי וואי תזכרו שאני רק מתחילה, אפשר בשפה יותר פשוטה? חח
סבבה אז אני אקצר
לכל אובייקט יש פונקציה שבונה אותו, שיכולה לקבל לתוכה ערכים וככה ליצור אותו בזיכרון, השם של הפונקציה הזו תמיד תהיה עם אותו השם של המחלקה שהיא נמצאת בה
אני אתן את person כדוגמה
class person{
private string name
private int age
public static person(name,age){
this.name = name
this.age = age
return person
}
}
ואז כשארצה לקרוא לאובייקט זה יראה ככה:
person = new person(bamba, 10)
זה כי אחרי המילה new אנחנו קוראים לפונקציה שבונה את האובייקט, וכמו כל פונקציה - חייבים להשתמש בסוגריים
לכל אובייקט יש פונקציה שבונה אותו, שיכולה לקבל לתוכה ערכים וככה ליצור אותו בזיכרון, השם של הפונקציה הזו תמיד תהיה עם אותו השם של המחלקה שהיא נמצאת בה
אני אתן את person כדוגמה
class person{
private string name
private int age
public static person(name,age){
this.name = name
this.age = age
return person
}
}
ואז כשארצה לקרוא לאובייקט זה יראה ככה:
person = new person(bamba, 10)
זה כי אחרי המילה new אנחנו קוראים לפונקציה שבונה את האובייקט, וכמו כל פונקציה - חייבים להשתמש בסוגריים
הסוגריים מעידות על כך שזה פונקציה
שואל השאלה:
ותכלס מה מכניסים שם בסוגריים? לפי מה שהבנתי מכניסים שם כל מיני מאפיינים לא? ואז איך מגדירים אותם במחלקה?
תכנות בהתחלה זה מסובך
וואו ואני נתפסת על כל מיני שטויות קטנות
ותכלס מה מכניסים שם בסוגריים? לפי מה שהבנתי מכניסים שם כל מיני מאפיינים לא? ואז איך מגדירים אותם במחלקה?
תכנות בהתחלה זה מסובך
וואו ואני נתפסת על כל מיני שטויות קטנות
זה לא שטויות, אלו דברים שצריך לדעת.
בתוך הסוגריים מכניסים את המאפיינים של האובייקט.
בתוך הסוגריים מכניסים את המאפיינים של האובייקט.
שואל השאלה:
אה ומה זה הthis הזה?
אה ומה זה הthis הזה?
שואל השאלה:
ומה זה אומר המאפיינים של האובייקט? איך הם באים לידי ביטוי? והבנתי שצריך להגדיר אותם במחלקה... במחלקה של הperson או program? ואיך תכלס מגדירים את זה? באיזה אופן הכוונה
ומה זה אומר המאפיינים של האובייקט? איך הם באים לידי ביטוי? והבנתי שצריך להגדיר אותם במחלקה... במחלקה של הperson או program? ואיך תכלס מגדירים את זה? באיזה אופן הכוונה
מילת מפתח המצביע על על המופע הנוכחי של המחלקה בה היא נמצאת.
למשל בתוך מחלקה, היא מתייחסת לאובייקט הנוכחי המדובר.
למשל בתוך מחלקה, היא מתייחסת לאובייקט הנוכחי המדובר.
זה קצת קשה להסביר בלי להדגים כמו שצריך.
חפשי מדריכים באינטרנט על oop ב- c# באינטרנט.
חפשי מדריכים באינטרנט על oop ב- c# באינטרנט.
בתוך הסוגרים מכניסים פרמטר רלוונטי. לא תמיד יש אבל לזה הצורה מיועדת
למשל לבנאי אפשר להכניס אובייקט אחר, ואז זה copy constructor: מעתיק ערך של האובייקט השני
או למשל אם זה אובייקט מספרי (int) אפשר להכניס שם מספר
למשל לבנאי אפשר להכניס אובייקט אחר, ואז זה copy constructor: מעתיק ערך של האובייקט השני
או למשל אם זה אובייקט מספרי (int) אפשר להכניס שם מספר
באותו הנושא: