Danh mục

Bài giảng Cơ sở lập trình máy tính: Chương 4 - ThS. Nguyễn Thị Khiêm Hòa

Số trang: 23      Loại file: pdf      Dung lượng: 1.17 MB      Lượt xem: 11      Lượt tải: 0    
Jamona

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

Thông tin tài liệu:

Bài giảng Cơ sở lập trình máy tính Chương 4 Kế thừa – Đa hình nhằm trình bày về thiết kế đối tượng, kế thừa và đa hình, lợi thế của lập trình hướng đối tượng, định nghĩa và ví dụ về kế thừa, mối quan hệ tổng quát hóa và chuyên biệt hóa.
Nội dung trích xuất từ tài liệu:
Bài giảng Cơ sở lập trình máy tính: Chương 4 - ThS. Nguyễn Thị Khiêm HòaChương 4: Kế thừa – Đa hình Giảng viên: Ths. Nguyễn Thị Khiêm Hòa Khoa Công nghệ Thông tin – Trường Đại học Ngân hàng TP.HCMNội dung Thiết kế đối tượng Kế thừa Đa hình Khoa Công nghệ Thông tin – Trường Đại học Ngân hàng TP.HCMLợi thế của lập trình hướng đối tượng 1 Lấy đối tượng làm trung tâm 2 Che giấu dữ liệu 3 Linh hoạt 4 Tái sử dụng 5 Không lệ thuộc thứ tự thuật toán Khoa Công nghệ Thông tin – Trường Đại học Ngân hàng TP.HCMTại sao phải kế thừaVấn đề trùng lắp thông tin: Nhiều lớp có thông tin giống nhau.Có 2 dạng:  Dạng chia sẻ: A ∩ B ≠ Ø. A B  Dạng mở rộng: B = A + ε. x, y, z x, y, z a, b, c u, v, w Nhược điểm: A B  Xây dựng tốn kém. x, y, z x, y, z  Dung lượng lưu trữ lớn. a, b, c  Thay đổi phần chung khó khăn. Tái sử dụng?! Khoa Công nghệ Thông tin – Trường Đại học Ngân hàng TP.HCMKhái niệm kế thừa Định nghĩa lớp mới dựa trên những lớp đã có. Lớp cơ sở: lớp dùng để định nghĩa lớp mới. Lớp dẫn xuất: lớp được định nghĩa từ lớp đã có. Lớp dẫn xuất thừa hưởng TẤT CẢ từ lớp cơ sở. O A x, y, z x, y, z A B B x, y, z x, y, z x, y, z a, b, c u, v, w a, b, c Khoa Công nghệ Thông tin – Trường Đại học Ngân hàng TP.HCMVí dụ kế thừa  Thông tin:  Thông tin:  Họ tên.  Họ tên.  Mức lương.  Mức lương.  Số ngày nghỉ.  Số ngày nghỉ.  Công việc:  Lớp chủ nhiệm. GVCN  Giảng dạy.  Công việc: Giáo viên  Tính lương.  Giảng dạy.  Tính lương.  Sinh hoạt chủ nhiệm. Khoa Công nghệ Thông tin – Trường Đại học Ngân hàng TP.HCMVí dụ kế thừaclass GiaoVien{ protected string Hotengv; protected double luonggv; protected int gvnghi; public GiaoVien(string HoTen,double Luong, int nn) { Hotengv = HoTen; luonggv = luong; gvnghi = nn; } public void giangDay(){} public double tinhLuong(){}} Khoa Công nghệ Thông tin – Trường Đại học Ngân hàng TP.HCMVí dụ kế thừaLớp dẫn xuất Lớp cơ sở class GVCN : GiaoVien { private string LopCN; public GVCN(string HoTen, double luong,int nn, string lop): base(HoTen, luong, nn) { LopCN =lop; } public void sinhHoatCN(){} } Khoa Công nghệ Thông tin – Trường Đại học Ngân hàng TP.HCMMối quan hệ tổng quát hóa và chuyên biệt hóa Kế thừa là mối quan hệ đặc biệt Các lớp dẫn xuất kế thừa các thuộc tính và phương thức của lớp cơ sở và cho phép tái sử dụng các đoạn code. Các lớp dẫn xuất là thành phần chuyên biệt hóa Khoa Công nghệ Thông tin – Trường Đại học Ngân hàng TP.HCMGọi Constructor của lớp cơ sở Từ khóa base được dùng trong lớp dẫn xuất để gọi constructor của lớp cơ sở public class Animal { protected string _name; public Animal(string name) { _name = name; } } public class Cat : Animal { public Cat (string name): base(name) {} } Khoa Công nghệ Thông tin – Trường Đại học Ngân hàng TP.HCMBài tập Thực hiện Xây dựng lớp tài khoản thẻ, kế thừa lớp tài khoản 20 min Khoa Công nghệ Thông tin – Trường Đại học Ngân hàng TP.HCMĐịnh nghĩa lại phương thức Kế thừa một phần:  Không kế thừa “máy móc” tất cả.  Lớp dẫn xuất có thể thay đổi những gì đã kế thừa Định nghĩa lại phương thức đã kế thừa. Khoa Công nghệ Thông tin – Trường Đại học Ngân hàng TP.HCMĐa hình Đa hình Xây dựng phương thức ảo Gọi lớp cơ sở từ lớp dẫn xuất Phương thức trừu tượng (abstract) ...

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