Kế thừa là gì?

  1. Các khái niệm trong lập trình hướng đối tượng
  2. Đối tượng là gì?
  3. Lớp là gì?
  4. Kế thừa là gì?
  5. Giao diện là gì?
  6. Gói là gì?
  7. Câu hỏi và bài tập

Kế thừa là gì?

Các loại đối tượng khác nhau cũng thường có một số điểm chung giống nhau.Ví dụ như xe đạp leo núi, xe đạp đường trường, và xe đạp đôi (xe đạp Heat) đều có những đặc tính của xe đạp (tốc độc hiện tại, nhịp đạp hiện tại, bánh răng hiện tại). Tuy vậy mỗi loại lại có thêm các tính năng bổ sung để phân biệt giữa chúng: Xe đạp đôi có hai chỗ ngồi và hai bộ tay lái; xe đạp đường trường có tay lái cong xuống dưới; một số xe đạp leo núi có bộ vòng xích bổ sung, nhằm làm giảm tỉ lệ của các bánh răng.

Lập trình hướng đối tượng cho phép các lớp kế thừa các trạng thái và hành vi từ lớp khác. Trong ví dụ này lớp Bicycle là lớp cha (superclass) của các lớp MountainBike, RoadBikeTandemBike. Trong ngôn ngữ lập trình Java , mỗi lớp chỉ có một lớp cha trực tiếp, và mỗi lớp cha có vô số lớp con:

Hệ thống phân cấp của lớp Xe đạp.

Cú pháp tạo một lớp con rất đơn giản, hãy thêm từ khóa extends vào phần đầu của khai báo của lớp, theo sau nó là tên của lớp mà bạn muốn kế thừa:

class MountainBike extends Bicycle {

// định nghĩa các trường và phương thức mới

// mà một chiếc xe đạp leo núi sẽ có

}

Việc khai báo như trên sẽ giúp cho lớp MountainBike có tất cả thuộc tính và hành vi của lớp Bicycle, nó cho phép tập trung viết các đoạn mã cho những tính năng mà chỉ duy nhất nó có. Việc này còn làm cho các đoạn mã của lớp con có thể được đọc dễ dàng hơn.
Tuy nhiên, bạn cần quan tâm đến việc viết tài liệu tương ứng cho mỗi trạng thái và hành vi của lớp cha, bởi vì mã của chúng sẽ không xuất hiện trong mã nguồn của các lớp con.

Bài được dịch từ nguồn  docs.oracle.com

Trans-team: PhúDĐ, NgọcNT, ĐạtDĐ, SơnĐH, HàĐT, ChàmNM

Sinh viên FPT Aptech Hà Nội

7 thoughts on “Kế thừa là gì?

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *