TypeScript 08 – Tính kế thừa trong TypeScript OOP

0
414

1.Tính kế thừa là gì?

  • 1 lớp a ngoài các phương thức và thuộc tính của riêng nó,có thể có các thuộc tính và phương thức của lớp b khác.
  • Ví dụ 1: lớp con người có các thuộc tính là tên,tuổi… các phương thức nói ..

lớp sinh viên cũng là con người nên cũng có các đặc điểm trên,ngoài ra còn có thêm phương thức như học…

  • Qua ví dụ trên ta thấy đối tượng Sinh viên có các thuộc tính và phương thức giống các thuộc tính và phương thức của đối tượng Con người,tại sao chúng ta phải khai báo dài như vậy.Vì thế trong lập trình hướng đối tượng cung cấp chúng ta một tính chất để giải quyết vấn đề này đó là tính kế thừa.
  • Lớp con sau khi kế thừa từ lớp cha sẽ có các thuộc tính và phương thức ở lớp cha.Ta sử dụng từ khóa extends thể hiện tính kế thừa này.
  • Tính kế thừa là tinh chất quan trọng nhất trong các tính chất của lập trình hướng đối tượng trong TypeScript.

  • Ví dụ 2:Sừa lại ví dụ 1 dùng từ khóa extends

Bộ video giáo trình typescript cơ bản tại đây.

2.Gọi các thuộc tính,phương thức của lớp cha

2.1.Hàm tạo trong kế thừa
  • Trong hàm tạo của class Con, ta buộc phải gọi lại hàm tạo của class Cha bằng từ khóa super. Từ khóa super này tượng trưng cho class Cha. Mỗi khi ta cần gọi phương thức hoặc thuộc tính nào ở class Cha trong class Con, ta sẽ dùng từ khóa super.
  • Ví dụ :

2.2.Gọi trong lớp con
  • Sau khi kế thừa từ lớp cha,ta có thể gọi các thuộc tính và phương thức ở lớp con bằng từ khóa this.ten_phuong_thuc//ten_thuoc_tinh
  • Ví dụ : gọi ra thuộc tính mắt và phương thức nhìn của lớp Con người trong phương thức học của lớp Sinh viên

2.3.Gọi từ bên ngoài lớp
  • Ta gọi như gọi thuộc tính và phương thức bên ngoài lớp của lớp cha sau khi đã kế thừa từ trong hàm tạo lớp con.
  • Ví dụ : Khởi tạo 1 đối tượng đối tượng Sinh viên và gọi đến phương thức nói trong lớp con người

3.Kế thừa lồng 

  • Kế thừa lồng hay còn gọi là kế thừa nhiều lớp, nghĩa là một lớp được kế thừa từ nhiều lớp. Lớp B kế thừa lớp A, lớp C kế thừa lớp B và thế là ta có luồng kế thừa  A -> B -> C.

  • Ví dụ : Ta sẽ xem một ví dụ từ thực tế,ông sinh ra bố,bố lại sinh ra mình,như vậy mình sẽ kế thừa các đặc tính dòng máu của ông.

4.Tổng kết 

Bài viết giới thiệu về tính kế thừa của lập trình hướng đối tượng trong TypeScript

Tác giả : Hà Trung Vietpro

[Total: 1    Average: 5/5]

LEAVE A REPLY

Please enter your comment!
Please enter your name here