Đăng ký Đăng nhập

Tài liệu Chuong4

.PDF
93
288
117

Mô tả:

Chương 4: Thừa kế và đa hình Nội dung chương 4 1. Đặc biệt hóa và tổng quát hóa 2. Sự kế thừa 3. Đa hình 4. Lớp trừu tượng 5. Lớp cô lập ( sealed class) 6. Lớp Object 1. Đặc biệt hóa và sự tổng quát hóa 1. Đặc biệt hóa và tổng quát hóa Trong thế giới thực, ta có thể hiểu kế thừa như sau: Con Cha 1. Đặc biệt hóa và tổng quát hóa  Trong lập trình hướng đối tượng, Kế thừa thường được dùng theo 2 cách:  Để phản ánh mối quan hệ giữa các lớp.  Để phản ánh sự chia sẻ mã chương trình giữa các lớp. 1. Đặc biệt hóa và tổng quát hóa  Phân tích thiết kế hướng đối tượng: Bước đầu tiên khi phân tích một hệ thống gồm các lớp đối tượng, ta xác định xem: Có các lớp đối tượng nào ? Chúng có các thuộc tính gì ? Chúng có quan hệ như thế nào ? 1. Đặc biệt hóa và tổng quát hóa  Có các lớp đối tượng nào ? Ví dụ: • Với bài toán tính toán trên phân số, có thể xác định lớp đối tượng sẽ tạo ra là lớp phân số • Bài toán quản lý nhân sự: cần có lớp đối tượng nhân viên, phòng ban, …. • Muốn quản lý học sinh phải xây dựng lớp học sinh, … 1. Đặc biệt hóa và tổng quát hóa  Chúng có các thuộc tính gì ? Ví dụ: • Lớp phân số: Phanso + Tuso + Mauso + Phanso() + NhapPS() + XuatPS() + CongPS() + ………… Tên lớp Các thuộc tính Các phương thức 1. Đặc biệt hóa và tổng quát hóa Ví dụ: • Lớp tam giác: Nhanvien + Maso + Hoten + Chucvu + nhap() + xuat() + ………… Phongban + Maso + Diachi + nhap() + xuat() + ………… Tên lớp Các thuộc tính Các phương thức Tên lớp Các thuộc tính Các phương thức 1. Đặc biệt hóa và tổng quát hóa Ví dụ: • Lớp học sinh: tùy thuộc vào yêu cầu bài toán, với trường học quản lý quá trình học tập HocSinh + MaSo + HoTen + MonHoc + Diem ……. + Nhap() + Xuat() + TinhDTB + ………… Tên lớp Các thuộc tính Các phương thức 1. Đặc biệt hóa và tổng quát hóa Ví dụ: • Lớp học sinh: tùy thuộc vào yêu cầu bài toán, với trường học quản lý tình trạng sức khỏe HocSinh + MaSo + HoTen + ChieuCao + CanNang + ……. + Nhap() + Xuat() + ChanDoanSK + ………… Tên lớp Các thuộc tính Các phương thức 1. Đặc biệt hóa và tổng quát hóa  Chúng có quan hệ thế nào? Quan hệ chứa - Aggregation • Một đối tượng có thể là thuộc tính của một đối tượng khác • Số lượng đối tượng chứa trong đối tượng khác được ràng buộc: • 1 có đúng một đối tượng tham gia • m..n có từ m đến n • 1..* có một hoặc nhiều • 0..1 có một hoặc không 1. Đặc biệt hóa và tổng quát hóa Ví dụ: quan hệ giữa nhân viên với phòng ban • Một phòng ban gồm nhiều nhân viên • Một phòng ban có số lượng nhân viên được giới hạn Phongban + Maso + Diachi + nhap() + Xuat() + ………… Nhanvien 1 1.. * + Maso + Hoten + Chucvu + nhap() +xuat() + ………… 1. Đặc biệt hóa và tổng quát hóa Quan hệ là một - inheritance  Trong hướng đối tượng, Sự kế thừa thường được biểu diễn bởi quan hệ “là một”. Chó “là một” loại động vật Gà “là một” loại động vật 1. Đặc biệt hóa và tổng quát hóa  Có chân  Có mắt  Có đuôi     Biết chạy Biết ngủ Biết sủa Biết vẫy đuôi Mã lệnh bị trùng Mã lệnh bị trùng  Có chân  Có mắt  Có cánh     Biết chạy Biết ngủ Biết bay Biết vẫy cánh 1. Đặc biệt hóa và tổng quát hóa Lớp động vật  Có chân  Có mắt  Biết chạy  Biết ngủ  Có đuôi  Có cánh  Biết sủa  Biết vẫy đuôi  Biết bay  Biết vẫy cánh 1. Đặc biệt hóa và tổng quát hóa Có thêm đặc điểm riêng là có đuôi, biết Chó và gà là sủa, biết vẫy trường hợp đuôi. đặc biệt của Có thêm đặc lớp động vật điểm riêng là có cánh, biết bay, biết vẫy cánh. Lớp động vật là sự tổng quát hóa của lớp gà và lớp chó 1. Đặc biệt hóa và tổng quát hóa Ví dụ: sơ đồ phân cấp biểu diễn mối quan hệ chó, gà và động vật Động vật Có chân Có mắt Biết chạy Biết ngủ Chó Gà Có đuôi Có cánh Biết sủa Biết vẫy đuôi Biết bay Biết vẫy cánh 1. Đặc biệt hóa và tổng quát hóa Bài tập: 1. Vẽ sơ đồ cây phân cấp biễu diễn khái niệm hình elip và hình tròn. 2. Vẽ sơ đồ cây phân cấp biểu diễn khái niệm nhân viên quản lý, nhân viên công nhật. Biết:  Nhân viên quản lý: Mã nhân viên, họ tên, hệ số lương, ngày vào làm, số ngày công , chức vụ, tiền trách nhiệm.  Nhân viên công nhật: Mã nhân viên, họ tên, hệ số lương, ngày vào làm, số ngày công. 1. Đặc biệt hóa và tổng quát hóa 3. Phân tích và vẽ cây phân cấp thừa kế cho các đối tượng trong một học viện:  Nhân viên quản lý  Nhân viên nghiên cứu  Nhân viên phục vụ
- Xem thêm -

Tài liệu liên quan