TAILIEUCHUNG - Bài giảng Kỹ thuật lập trình: Bài 9 - TS. Đào Trung Kiên

Bài giảng Kỹ thuật lập trình: Bài 9 do TS. Đào Trung Kiên biên soạn trình bày các nội dung sau: Khái niệm kế thừa, kế thừa public, kế thừa private, thành phần protected, tổng kết các kiểu kế thừa, constructor và destructor trong kế thừa,. | Bài 9: Kế thừa (Inheritance) 1 EE3490: Kỹ thuật lập trình – HK1 2017/2018 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội Khái niệm Để quản lý nhân sự của công ty, ta có thể định nghĩa các lớp tương ứng với các vị trí làm việc của công ty: class Worker { private: string name; float salary; int level; public: string getName() {.} void pay() {.} void doWork() {.} . }; class Manager { private: string name; float salary; int dept; public: string getName() {.} void pay() {.} void doWork() {.} . }; class Director { private: string name; float salary; public: string getName() {.} void pay() {.} void doWork() {.} . }; Cả 3 lớp trên đều có những biến và hàm giống hệt nhau về nội dung tạo ra một lớp Employee chứa các thông tin chung đó để sử dụng lại Giảm số code cần viết Dễ bảo trì, sửa đổi về sau 2 Sử dụng lại code Rõ ràng hơn về mặt logic trong thiết kế chương trình EE3490: Kỹ thuật lập trình – HK1 2017/2018 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội Khái niệm (tiếp) Lớp mẹ (hay lớp cơ sở) Các lớp con (hay lớp dẫn xuất) Worker Employee Manager Director Hai hướng thừa kế: Cụ thể hoá: lớp con là một trường hợp riêng của lớp mẹ (như ví dụ trên) Tổng quát hoá: mở rộng lớp mẹ (vd: Point2D thêm biến z để thành Point3D) Kế thừa cho phép các lớp con sử dụng các biến và phương thức của lớp mẹ như của nó, trừ các biến và phương thức private Kế thừa với public và private: 3 public: các thành phần public của lớp mẹ vẫn là public trong lớp con private: toàn bộ các thành phần của lớp mẹ trở thành private của lớp con EE3490: Kỹ thuật lập trình – HK1 2017/2018 TS. Đào Trung Kiên – ĐH Bách khoa Hà Nội Kế thừa public class Employee { private: string name; float salary; public: . string getName() {.} void pay() {.} }; class Worker : public Employee { private: int level; public: . void doWork() {.} void show() { cout << getName() << salary; // lỗi } }; Worker .

TỪ KHÓA LIÊN QUAN
TAILIEUCHUNG - Chia sẻ tài liệu không giới hạn
Địa chỉ : 444 Hoang Hoa Tham, Hanoi, Viet Nam
Website : tailieuchung.com
Email : tailieuchung20@gmail.com
Tailieuchung.com là thư viện tài liệu trực tuyến, nơi chia sẽ trao đổi hàng triệu tài liệu như luận văn đồ án, sách, giáo trình, đề thi.
Chúng tôi không chịu trách nhiệm liên quan đến các vấn đề bản quyền nội dung tài liệu được thành viên tự nguyện đăng tải lên, nếu phát hiện thấy tài liệu xấu hoặc tài liệu có bản quyền xin hãy email cho chúng tôi.
Đã phát hiện trình chặn quảng cáo AdBlock
Trang web này phụ thuộc vào doanh thu từ số lần hiển thị quảng cáo để tồn tại. Vui lòng tắt trình chặn quảng cáo của bạn hoặc tạm dừng tính năng chặn quảng cáo cho trang web này.