Bài giảng "Lập trình hướng đối tượng (dùng Java) - Chương 3: Lập trình Hướng đối tượng với Java (P2)" cung cấp cho người học các kiến thức: Vấn đề tái sử dụng code, kế thừa trong Java, tính đa hình trong Java, cài đặt interface trong Java, lập trình tổng quát. nội dung chi tiết. | Chương 3 Lập trình Hướng đối tượng với Java (tt) TRẦN MINH THÁI Email: minhthai@ Website: Cập nhật: 22 tháng 03 năm 2017 Nội dung Vấn đề tái sử dụng code Kế thừa trong Java Tính đa hình trong Java Cài đặt interface trong Java Lập trình tổng quát 2 VẤN ĐỀ TÁI SỬ DỤNG CODE Tái sử dụng code Lập trình cấu trúc: chương trình con OOP: nhiều loại đối tượng có thuộc tính, hành vi tương tự nhau tái sử dụng các lớp đã viết Trong một lớp vẫn tái sử dụng phương thức Ưu điểm: Giảm chi phí Nâng cao khả năng bảo trì và khả năng mô hình hóa Các hình thức tái sử dụng code Sao chép lớp cũ thành 1 lớp khác Hạn chế: Dư thừa, khó quản lý khi có thay đổi Kết hợp: Lớp mới là tập hợp/ sử dụng các lớp đã có Kế thừa: Lớp mới phát triển thêm các thuộc tính hoặc phương thức từ lớp đã có KẾT HỢP AGGREGATION Kết hợp (Aggregation) Thể hiện mối quan hệ “has-a”: Lớp mới chứa các đối tượng của lớp cũ Lớp mới: Lớp chứa/ Lớp toàn thể Lớp cũ: Lớp thành phần Ví dụ: Lớp cũ: Điểm (Point) Lớp mới: Tam giác (Triangle) có 3 điểm Lớp chứa tái sử dụng các thành viên của lớp thành phần thông qua đối tượng Sơ đồ lớp Số lượng thành phần 1 số nguyên dương (1, 2, 3.) Dải số (01, 1n) Bất kỳ giá trị nào: * Không ghi: 1 Ví dụ Lớp ToaDoDiem package ; public class ToaDoDiem { private int x; private int y; public ToaDoDiem() { (0); (0); } public ToaDoDiem(int x, int y) { (x); (y); } public int getX() {return x;} public void setX(int x) { = x;} public int getY() {return y;} public void setY(int y) { = y;} public void hienThi() { ("(%d, %d)\n", , ); } } Ví dụ Lớp TamGiac Nếu lớp thành phần khác package thì dùng lệnh import Ví dụ Lớp TamGiac Bài tập 1 Xây dựng một trò chơi xúc xắc. Cách chơi như sau: Mỗi hạt xúc xắc được gieo sẽ có giá trị ngẫu nhiên Hai người lần lượt gieo 1 hạt xúc xắc Sau mỗi lượt gieo, số điểm của lượt đó được tích lũy vào số điểm của . | Chương 3 Lập trình Hướng đối tượng với Java (tt) TRẦN MINH THÁI Email: minhthai@ Website: Cập nhật: 22 tháng 03 năm 2017 Nội dung Vấn đề tái sử dụng code Kế thừa trong Java Tính đa hình trong Java Cài đặt interface trong Java Lập trình tổng quát 2 VẤN ĐỀ TÁI SỬ DỤNG CODE Tái sử dụng code Lập trình cấu trúc: chương trình con OOP: nhiều loại đối tượng có thuộc tính, hành vi tương tự nhau tái sử dụng các lớp đã viết Trong một lớp vẫn tái sử dụng phương thức Ưu điểm: Giảm chi phí Nâng cao khả năng bảo trì và khả năng mô hình hóa Các hình thức tái sử dụng code Sao chép lớp cũ thành 1 lớp khác Hạn chế: Dư thừa, khó quản lý khi có thay đổi Kết hợp: Lớp mới là tập hợp/ sử dụng các lớp đã có Kế thừa: Lớp mới phát triển thêm các thuộc tính hoặc phương thức từ lớp đã có KẾT HỢP AGGREGATION Kết hợp (Aggregation) Thể hiện mối quan hệ “has-a”: Lớp mới chứa các đối tượng của lớp cũ Lớp mới: Lớp chứa/ Lớp toàn thể Lớp cũ: Lớp thành phần Ví dụ: Lớp cũ: Điểm .