GV: Lê Xuân Định
L.X.Định CuuDuongThanCong.com https://fb.com/tailieudientucntt
Lớp s – Lớp Dẫn xuất
Phương tiện Giao thông
- Thuộc tính: Tốc độ tối đa
- Phương thức: Di chuyển
Xe c
- Thuộc tính: Tốc độ tối đa, nh, thân
- Phương thức: Di chuyển (chạy trên
đường)
u thuyn
- Thuc tính: Tc độ ti đa, boong, mũi
- Pơng thc: Di chuyn (trôi trên mt
ớc)
y bay
- Thuc tính: Tc độ ti đa, cánh, thân,
đuôi
- Pơng thc: Di chuyn (bay trên trời)
L.X.Định 2
Lớp Cơ s
Các thuộc tính cơ sở
Các phương thức cơ sở:
Trừu tượng hơn (thường là
ảo, tức chỉ định nghĩa giao
diện, còn nội dung cài đặt thì
chưa có hoặc có đơn giản)
Lớp Dẫn xuất
Các thuộc tính cơ sở
Các thuộc tính dẫn xuất
c phương thức cơ sở
Các phương thức dẫn xuất:
Cụ thể hơn (có nội dung cài
đặt cụ thể)
thừa kế
Xe đạp
- Thuộc tính: Tốc độ tối đa, bánh, thân, xích,
líp, ...
- Phương thức: Di chuyển
Xe hơi
- Thuộc tính: Tốc độ tối đa, bánh, thân, xăng,
động , ...
- Phương thức: Di chuyển, đổ xăng
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Cây kế thừa
Phương tiện Giao thông
Xe c
Xe máy
Xe đạp
Xe hơi
Xe tải
Tàu thuyền
Tàu cánh ngầm
Thuyền buồm
Máy bay
Phản lực
Trực thăng
L.X.Định 3
PT Giao thông
tốc đtối đa
DiChuyển() = 0
Xe c
bánh xe
thân xe
DiChuyển()
{ /*chạy trên đường */}
Máy bay
cánh
thân
đuôi
DiChuyển()
{ /* bay trên không */}
Xe đạp Xe hơi Phản lực Trc thăng
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Kế thừa (chiều thuận)
Bài toán 1
Đã có sẵn lớp SinhVien
Thuộc tính: MSSV, điểm thuyết (đLT), điểm thực hành (đTH)
Phương thức:
Khởi tạo, xuất, thi LT, thi TH
Tính điểm Tổng kết (đTK): Tr v đTK = (6*đLT + 4*đTH)/10
Cần định nghĩa lớp SinhVienB
Thuộc tính: MSSV, điểm thuyết (đLT), điểm thực hành (đTH),
điểm cộng (đCộng)
Phương thc:
Khởi tạo, xuất, thi LT, thi TH, làm bài tập (lấy điểm cộng)
Tính điểm Tổng kết (đTK): Tr v đTK = (6*đLT + 4*đTH)/10
+ đCộng
L.X.Định 4
CuuDuongThanCong.com https://fb.com/tailieudientucntt
Kế thừa – Giao diện
Lớp dẫn xuất
Thừa kế mọi thành
phần(*) của lớp cơ sở;
Thêm một số thành
phần riêng của lớp dn
xuất;
Cài đặt lại (đè lên) một
số phương thức của
lớp cơ sở.
L.X.Định 5
SinhVienB
MSSV
điểmLýThuyết
điểmThựcHành
điểmCộng
SinhVienB(mssv)
xuất()
thiThuyết()
thiThcHành()
điểmTổngKết()
làmBàiTập()
SinhVien
MSSV
điểmLýThuyết
điểmThựcHành
điểmCộng
SinhVien(mssv)
xuất()
thiLýThuyết()
thiThựcHành()
điểmTổngKết()
làmBàiTập()
class SinhVien
{
private:
int mssv;
float dLT, dTH;
public:
SinhVien(int mssv);
...
};
class SinhVienB:public SinhVien
{private:
float dCong;
public:
void lamBT();
SinhVienB(int mssv);
void xuat();
float diemTK();
};
protected:
(*) Nhưng lớp dẫn
xuất chỉ truy cập
được tới các thành
phần trong phạm vi
protected & public
của lớp cơ sở.
Cài đặt đè: override
Thừa
kế
CuuDuongThanCong.com https://fb.com/tailieudientucntt