ดาวน์โหลดงานนำเสนอ
งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ
1
การสืบทอด (Inheritance)
2
ความหมายของ Inheritance
การสร้างหรือพัฒนาคลาสใหม่จากคลาสเดิมที่มีอยู่แล้ว โดยคลาสใหม่จะนำ แอตทริบิวต์และเมธอดของคลาสเดิมมาใช้ เรียกคลาสที่ถ่ายทอดคุณสมบัติของคลาสว่า คลาสแม่ (Super Class) เรียกคลาสที่ได้รับการถ่ายทอดคุณสมบัติของคลาสว่า คลาสลูก (Sub Class)
3
ความหมายของ Inheritance (ต่อ)
4
สิ่งที่ควรรู้เกี่ยวกับการ Inheritance
Super Class Sub Class Final Class Override method
5
คลาสแม่ (Super Class) เป็นคลาสที่ถูกใช้เป็นต้นแบบของแอตทริบิวต์และเมธอด บางครั้งเรียกว่า parent-class หรือ base-class อนุญาตให้คลาสอื่นสืบทอดแอตทริบิวต์และเมธอด ได้ทั้งหมด ยกเว้น แอตทริบิวต์ที่มีระดับการเข้าถึงเป็น private เมธอดที่เป็น Constructor ระดับการเข้าถึงแอตทริบิวต์และเมธอดของคลาสแม่ต้องกำหนดเป็น protected
6
คลาสลูก (Sub Class) เป็นคลาสที่สืบทอดแอตทริบิวต์และเมธอด จากคลาสแม่
สามารถเรียกใช้แอตทริบิวต์และเมธอดที่สืบทอดมาจากคลาสแม่ได้ สามารถมีแอตทริบิวต์และเมธอดเพิ่มเติมได้ การระบุหรือกำหนดความสัมพันธ์ให้คลาสเป็นคลาสลูกต้องใช้คีย์เวิร์ด extends รูปแบบการสร้าง class ชื่อ Sub Class extends ชื่อ Super Class { …….. }
7
สัตว์ต่างๆ คลาสแมว คลาสปลา คลาสลิง แอตทริบิวต์ ได้แก่ อายุ และ ความหิว
เมธอด ได้แก่ กิน() และ นอน() คลาสปลา แอตทริบิวต์ ได้แก่ อายุ ความหิว และชื่อ (เช่น ปลานีโม) คลาสลิง เมธอดได้แก่ กิน() นอน() และเก็บลูกมะพร้าว()
8
แอตทริบิวท์และเมธอดที่คล้ายกัน
9
ตัวอย่างการสืบทอด ตัวอย่าง } class ลิง extends สัตว์ {
10
ตัวอย่าง Super Class และ Sub Class
class A : parent class/base class/super class class B : child class/extended class/sub class class A { void printA() { System.out.println(‘A’); } class B extends A { void printB() { System.out.println(‘B’);
11
ตัวอย่าง Super Class และ Sub Class (ต่อ)
การเรียกใช้งาน class InheritTest1 { public static void main(String args[]) { A x = new A(); x.printA(); B y = new B(); y.printA(); y.printB(); } Output???
12
ตัวอย่าง 2 Output??? class AA { int x = 1;}
class BB extends AA { int y = 2; } class Inherit2 { public static void main(String args[]) { AA a = new AA(); System.out.println(a.x); BB b = new BB(); System.out.println(b.x + "," + b.y); b.x--; System.out.println(b.x); a = b; } Output???
13
Overriding Method เป็นการแก้ไขเมธอดที่สืบทอดมาจากคลาสแม่
คลาสลูกต้องมีชื่อเมธอด ค่าที่ส่งกลับออกจากเมธอด ค่าอาร์กิวเมนต์เหมือน คลาสแม่ แต่ปรับปรุงการทำงานการทำงานภายในที่ไม่เหมือนกับคลาสแม่
14
Final Class Final เป็นคีย์เวิร์ดที่ใช้นำหน้าตัวแปร เมธอด และคลาส ซึ่งจะทำให้มีคึณ สมบัติดังดังนี้ ทำให้ตัวแปรเป็นค่าคงที่ ไม่สามารถเปลี่ยนแปลงค่าได้ ทำให้เมธอดไม่สามารถ Override ได้
15
ทดสอบการสืบทอดคุณสมบัติ
16
สร้างคลาสแม่
17
สร้างคลาสลูก1
18
สร้างคลาสลูก2
19
ทดสอบการทำงาน
งานนำเสนอที่คล้ายกัน
© 2024 SlidePlayer.in.th Inc.
All rights reserved.