Danh mục

Bài giảng Kỹ thuật lập trình C/C++: Chương 10 (3) - Lê Thành Sách

Số trang: 74      Loại file: pdf      Dung lượng: 1.15 MB      Lượt xem: 8      Lượt tải: 0    
Hoai.2512

Xem trước 8 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Bài giảng "Kỹ thuật lập trình C/C++ - Chương 10: Lập trình hướng đối tượng" phần Thừa kế giúp người học nắm bắt các kiến thức: Tại sao cần đến thừa kế, các khái niệm, các kiểu thừa kế, thiết kế các lớp, khởi tạo lớp cha từ lớp con,... Mời các bạn cùng tham khảo.
Nội dung trích xuất từ tài liệu:
Bài giảng Kỹ thuật lập trình C/C++: Chương 10 (3) - Lê Thành Sách Chương 10 Lập trình hướng đối tượng --Thừa kế-- Lê Thành SáchTrường Đại Học Bách Khoa Tp.HCM Lập trình C/C++Khoa Khoa học và Kỹ thuật Máy tính 1 CuuDuongThanCong.com https://fb.com/tailieudientucntt© 2017 Nội dung n Tại sao cần đến thừa kế n Các khái niệm n Thừa kế là gì? n Các kiểu thừa kế n Thiết kế các lớp (I). n Khởi tạo lớp cha từ lớp con n Thiết kế các lớp (II). n Tổng kếtTrường Đại Học Bách Khoa Tp.HCM Lập trình C/C++Khoa Khoa học và Kỹ thuật Máy tính 2 CuuDuongThanCong.com https://fb.com/tailieudientucntt© 2017 Tại sao cần đến thừa kế n Giả sử một hệ thống phần mềm cho một trường đại học (Bách Khoa). Nhiều nhóm người dùng có thể dùng hệ thống này, họ có thể là: a) Giảng viên (lecturer) b) Sinh viên (student) c) Nhân viên văn phòng (clerk) d) Bảo vệ (guardian) e) Người dọn dẹp (cleaner) f) v.v n Mỗi nhóm người dùng có những tính năng khác nhau, hệ thống xử lý dữ liệu với từng nhóm cũng khác nhau. n Giải pháp là gì để phầm mềm xử lý dữ liệu với từng nhóm người theo cách khác nhau?Trường Đại Học Bách Khoa Tp.HCM Lập trình C/C++Khoa Khoa học và Kỹ thuật Máy tính 3 CuuDuongThanCong.com https://fb.com/tailieudientucntt© 2017 Tại sao cần đến thừa kế n (1) Tạo chung một cấu trúc “User”, cấu trúc này có trường thông tin “type”. Giải thuật xử lý có dạng: switch (type){ case STUDENT:{ //Xử lý, nếu là sinh viên } case LECTURER:{ //Xử lý, nếu là giảng viên } ... };Trường Đại Học Bách Khoa Tp.HCM Lập trình C/C++Khoa Khoa học và Kỹ thuật Máy tính 4 CuuDuongThanCong.com https://fb.com/tailieudientucntt© 2017 Tại sao cần đến thừa kế n (1) Tạo chung một cấu trúc “User”, cấu trúc này có trường thông tin “type”. Giải thuật xử lý có dạng: n Nhược điểm: n Code dài dòng n Khó thay đổi n Khó mở rộng n …Trường Đại Học Bách Khoa Tp.HCM Lập trình C/C++Khoa Khoa học và Kỹ thuật Máy tính 5 CuuDuongThanCong.com https://fb.com/tailieudientucntt© 2017 Tại sao cần đến thừa kế n (2) Chia thành các nhóm nhỏ (lớp) nhỏ như: Student, Lecturer, … Các phương thức xử lý gắn kèm với từng loại. class Student{ public: //Phương thức cho sinh viên }; class Lecturer{ public: //Phương thức cho giảng viên }; …Trường Đại Học Bách Khoa Tp.HCM Lập trình C/C++Khoa Khoa học và Kỹ thuật Máy tính 6 CuuDuongThanCong.com https://fb.com/tailieudientucntt© 2017 Tại sao cần đến thừa kế n (2) Chia thành các nhóm (lớp) nhỏ như: Student, Lecturer, … Các phương thức xử lý gắn kèm với từng loại. n Nhược điểm: n Lặp lại code (code duplication) n Ví dụ: n Phương thức “getName”/”setName” (lấy/gán tên) đều phải hiện thực lại cho tất cả các lớp. n Khó bảo trì n Khó thay đổi hay nâng cấp n …Trường Đại Học Bách Khoa Tp.HCM Lập trình C/C++Khoa Khoa học và Kỹ thuật Máy tính 7 CuuDuongThanCong.com https://fb.com/tailieudientucntt© 2017 Tại sao cần đến thừa kế n ...

Tài liệu được xem nhiều: