כללי אצבע בהורשה בשפת java - תכנות מונחה עצמים.כלל...

כללי אצבע בהורשה בשפת java - תכנות מונחה עצמים.

כלל ראשון
כל המחלקות יורשות בצורה זו או אחרת מהמחלקה: Object.
לכן כל מחלקה שניצור, תיצור גם אובייקט מטיפוס Object.

למשל שני הביטויים יהיו שקולים:
ביטוי ראשון:
public class Student{
}
ביטוי שני:
public class Student extends Object{
}

לכל מחלקה בשפה יש את הפעולות של המחלקה Object, למשל:
toString()
equals()


ניצור לדוגמה את המחלקה Person:
public class Person{
private String name;
public Person(String name)
{
this.name = name;
}
}
ניצור לדוגמה את המחלקה Student:
public class Student{
private String name;
private int grade;

public Student(String name, int grade)
{
this.name = name;
this.grade = grade;
}
}
ניתן לראות שגם ל Person וגם ל Student יש את אותה תכונה: name, קוד שחוזר על עצמו זה קוד לא טוב!


לכן נשתמש בפתרון שיש לשפה להציע והוא: ירושה.

public class Student extends Person{
private int grade;

public Student(String name, int grade)
{
super(name);
this.grade = grade;
}

}

עכשיו המחלקה Student יורשת מהמחלקה Person.

בעצם שאנחנו יוצרים Student מה באמת נוצר? ומה הסדר של היצירה?
הראשון שנוצר: Object
השני שנוצר: Person
השלישי שנוצר: Student.

לכן לתלמיד בזמן ריצה יהיו את כל הפעולות שיש ל-Object, ל Person ול-Student.