Bài giảng Lập trình hướng đối tượng - Chương 5: Kế thừa (Inheritance) - Nguyễn Sơn Tùng

Đại Học Quốc Gia Tp. Hồ Chí Minh  
Trường ĐH Khoa Học Tự Nhiên  
Khoa Công Nghệ Thông Tin  
LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG  
CHƯƠNG 5  
KẾ THỪA  
(INHERITANCE)  
ThS: Phạm Nguyễn Sơn Tùng  
Email: pnstung@fit.hcmus.edu.vn  
Giới thiệu về kế thừa  
Mục tiêu của kế thừa  
Tầm vực kế thừa  
1
2
3
4
Demo bài tập ứng dụng tại lớp  
Hỏi đáp  
5
2
17/12/2019  
C05: Kế thừa  
➢ Định nghĩa: Tên tiếng Anh Inheritance. Là việc định  
nghĩa lại lớp mới dựa trên lớp đã có.  
o Lớp cơ sở (Base class): còn gọi là lớp cha, là lớp  
dùng để định nghĩa lớp mới.  
o Lớp dẫn suất (Derived class): còn gọi lớp con, là  
lớp được định nghĩa từ lớp đã có.  
3
17/12/2019  
C05: Kế thừa  
LỚP CHA  
(Super class)  
Lớp cơ sở  
(Base class)  
LỚP CON  
(Sub class)  
Lớp dẫn xuất  
(Derived class)  
4
17/12/2019  
C05: Kế thừa  
➢ Kỹ thuật kế thừa giúp tái sử dụng code.  
➔ Tiết kiệm công sức lập trình, công sức kiểm  
tra code.  
➢ Bảo mật code, dễ nâng cấp, bảo trì.  
➔ Tránh xảy ra tình trạng lỗi trước và sau  
chương trình.  
5
17/12/2019  
C05: Kế thừa  
Mỗi ngôn ngữ hướng đối tượng sẽ hỗ trợ khả năng thừa  
kế riêng.  
6
17/12/2019  
C05: Kế thừa  
➢ Đơn kế thừa (Single Inheritance): Là loại kế thừa cho  
phép một lớp dẫn xuất chỉ có thể kế thừa từ một lớp cơ  
sở duy nhất.  
7
17/12/2019  
C05: Kế thừa  
➢ Kế thừa thứ bậc (Hierarchial Inheritance): Là loại kế  
thừa cho phép nhiều lớp dẫn xuất chỉ có thể kế thừa từ  
một lớp cơ sở duy nhất.  
8
17/12/2019  
C05: Kế thừa  
➢ Kế thừa nhiều cấp (Multilevel Inheritance): Là loại kế  
thừa cho phép theo nhiều cấp bậc khác nhau.  
9
17/12/2019  
C05: Kế thừa  
➢ Đa kế thừa (Multiple inheritance): Là loại kết thừa cho  
phép một lớp có thể kế thừa từ nhiều lớp cơ sở.  
10  
17/12/2019  
C05: Kế thừa  
➢ Kế thừa lai (Hybrid Inheritance): Kế thừa lai là sự kết  
hợp của nhiều loại kế thừa và nhiều cấp kế thừa.  
11  
17/12/2019  
C05: Kế thừa  
➢ Cú pháp khai báo kế thừa:  
class <Lớp dẫn xuất>: <Loại kế thừa> <Lớp cơ sở>  
➢ Từ khóa kế thừa:  
public, private, protected.  
12  
17/12/2019  
C05: Kế thừa  
➢ Khai báo lớp Cha:  
13  
17/12/2019  
C05: Kế thừa  
➢ Khai báo lớp con:  
Lớp cha  
Từ khóa kế thừa  
Lớp con  
14  
17/12/2019  
C05: Kế thừa  
Lớp con để kế  
Lớp con để kế  
Lớp con để kế  
thừa public  
thừa private  
thừa protected  
private  
(lớp cha)  
Không thể truy  
xuất  
Không thể truy  
xuất  
Không thể truy  
xuất  
public  
(lớp cha)  
public  
private  
private  
protected  
protected  
protected  
(lớp cha)  
protected  
15  
17/12/2019  
C05 Kế thừa  
➢ Bài toán: Một công ty ABC có 3 loại nhân viên.  
Nhân viên quản lý  
Nhân viên công nhật  
Nhân viên sản xuất  
16  
17/12/2019  
Nhân viên công nhật  
• Họ tên  
Nhân viên sản xuất  
• Họ tên  
Nhân viên quản lý  
• Họ tên  
• Ngày sinh  
• Ngày sinh  
• Địa chỉ  
• Ngày sinh  
• Địa chỉ  
• Địa chỉ  
• Số ngày công  
• Số sản phẩm  
• Lương cơ bản  
• Hệ số lương  
17  
17/12/2019  
C05: Kế thừa  
➢ Yêu cầu: Hãy tính lương cho các nhân viên của công ty  
biết:  
▪ Lương NV quản lý: Lương cơ bản x Hệ số lương.  
▪ Lương NV công nhật: Số ngày công x 200.000.  
▪ Lương NV sản xuất: Số sản phẩm x 100.000.  
18  
17/12/2019  
C05: Kế thừa  
➢ Vẽ sơ đồ lớp cho 3 đối tượng của bài toán.  
19  
17/12/2019  
C05: Kế thừa  
➢ Tìm một lớp bao hàm 3 lớp trên hoặc tạo lớp mới  
bằng việc đem các thuộc tính và phương thức giống  
nhau bỏ vào lớp cơ sở.  
20  
17/
C05: Kế thừa  
Tải về để xem bản đầy đủ
pdf 37 trang myanh 30143 Free
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Lập trình hướng đối tượng - Chương 5: Kế thừa (Inheritance) - Nguyễn Sơn Tùng", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfbai_giang_lap_trinh_huong_doi_tuong_chuong_5_ke_thua_inherit.pdf