5. 2) การสืบทอด (Inheritance)
หมายถึงการนิยามคลาสใหม่จากคลาสที่มีอยู่แล้วโดยคลาสใหม่สามารถที่จะนาคุณลักษณะและเมธอดของคลาสเดิมมาใช้ได้
คือ Class หนึ่งๆสามารถสืบทอดคุณสมบัติบางประการจาก Class อื่น แล้วเพิ่มคุณสมบัติเฉพาะของ Class นั้นเข้าไป
- Class ที่ได้รับการสืบทอดคุณสมบัติเรียกว่า Subclasses
- Class ที่เป็นต้นแบบเรียกว่า Superclass
เป็นการช่วยให้ไม่ต้องพัฒนา ส่วนที่ซ้าหลายๆรอบ (Reusable)
Class หนึ่งๆจะมี Superclass ได้เพียง Class เดียวเท่านั้น (Single Inheritance)
ในภาษาจาวา จะใช้คีย์เวิร์ด extends เพื่อระบุการสืบทอด
3) การมีได้หลายรูปแบบ (Polymorphism)
หมายถึง การที่สามารถตอบสนองต่อข่าวสาร (เมธอด) เดียวกันด้วยวิธีการที่ต่างกัน และสามารถกาหนดออปเจ็คได้หลาย
รูปแบบ
- Overriddenmethod
- Dynamic Binding
6. • ตัวอย่างที่เน้นโปรแกรมแบบ OOP
1) Object แรกของ class มักชื่อ main โปรแกรมนี้สั้น
และง่ายที่สุด
>> สร้างกล่อง 1 กล่องในกล่องมี object ทางาน
พิมพ์x เพียงอักษรเดียว
>> มองว่า class ก็คือกล่อง แต่ละกล่องคือที่เก็บ object
class x {
public static void main(String args[]) {
System.out.println("x");
}
}
7. 2) การเรียก object ใน class เดียวกัน โดยมองว่า class เสมือนกล่องเก็บobject มากมาย
>> สร้างกล่อง 1 กล่องในกล่องมี 2 object และ object 1 เรียก object 2 มาทางาน
class x {
public static void main(String args[]) {
int i = 1;
System.out.println(i);
ok(); }
static void ok() {
System.out.println("xx");
}
}
// Result of this program
// 1
// xx