Thừa kế (Inheritance)
- Khái niệm
- Cú pháp
- Truy cập thành phần lớp cha
- Toán tử tạo lập
- Kế thừa constructor
- Chuỗi constructors
- Nạp chồng phương thức
- Ghi đè phương thức
- Toán tử móc xích giữa các lớp kế thừa
- Ngăn kế thừa với khai báo final
Thừa kế (Inheritance)
Tạo ra một lớp mới từ lớp có sẵn
Sử dụng lại thuộc tính và phương thức
Superclass (Base class)
- Là lớp mà từ đó lớp con được dẫn xuất
- Có thể gọi là lớp cơ sở hoặc lớp cha
Subclass (Derived class)
- Là lớp được dẫn xuất từ lớp khác
- Có thể gọi là lớp dẫn xuất hoặc lớp con
- có thể kế thừa:
- các thuộc tính dữ liệu và
- hàm tp của lớp cha; - và
- có thể bổ sung thêm để xác định thêm t/c, hành vì của những đt cụ thể hơn.
Sử dụng từ khoá
extends để khai báo sự thừa kế
Một lớp có thể dẫn xuất trực tiếp từ
duy nhất một lớp (đơn thừa kế)
Nếu một lớp không có bất kỳ lớp cha nào thì mặc nhiên nó cũng được dẫn xuất từ lớp Object
Lớp Object là cha của tất cả các lớp trong Java
Một lớp con có thể thừa kế tất cả các thành phần được khai báo
protected và public của lớp cha
Example:
Ví dụ về thừa kế
Member access & Inheritance
Inheriting a class does not overrule the private access restriction. Thus, even though a subclass includes all of the members of its superclass, it cannot access those members of the superclass that have been declared private.
Solution