Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 15 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
15
Dung lượng
474,5 KB
Nội dung
LẬP TRÌNH JAVA Bài 8: Kết tập Mục tiêu Kết thúc bài học bạn có thể nắm được: Chỉ chất kết tập Mô tả khái niệm liên quan đến kết tập Biểu diễn kết tập UML Sử dụng vấn đề với ngôn ngữ lập trình Java 04/12/15 Bộ Môn CNPM - ĐHBK Hà Nội Nội dung 8.1 Tổng quan kết tập 8.2 Biểu diễn UML 8.3 Thực thi Java 04/12/15 Bộ Môn CNPM - ĐHBK Hà Nội 8.1 Tổng quan kết tập Ví dụ: Điểm Tứ giác gồm điểm Kết tập 04/12/15 Bộ Môn CNPM - ĐHBK Hà Nội 8.1 Tổng quan kết tập Tái sử dụng mã nguồn (Re-usability) Tồn nhiều loại đối tượng có thuộc tính hành vi tương tự liên quan đến Xuất nhu cầu sử dụng lại mã nguồn viết Lớp cũ có, công lập trình Sử dụng lại lớp cũ: 04/12/15 Sao chép lớp cũ thành lớp khác Tạo lớp kết hợp đối tượng lớp cũ có Kết tập Tạo lớp sở phát triển từ lớp cũ có Kế thừa Bộ Môn CNPM - ĐHBK Hà Nội 8.1 Tổng quan kết tập Bản chất kết tập Tạo tham chiếu đến đối tượng lớp có sẵn lớp Lớp kết tập lớp cũ có Lớp chứa tham chiếu đến đối tượng lớp cũ Các tham chiếu thành viên lớp Quan hệ chứa/có (“has-a”) phần (is-a-part-of) sử dụng (“use-a”) Kết tập tái sử dụng thông qua đối tượng 04/12/15 Bộ Môn CNPM - ĐHBK Hà Nội Nội dung 8.1 Tổng quan kết tập 8.2 Biểu diễn UML 8.3 Thực thi Java 04/12/15 Bộ Môn CNPM - ĐHBK Hà Nội 8.2 Biểu diễn UML Bội số quan hệ (Multiplicity) số nguyên dương: 1, 2, Dải số (0 1, 4) *: Bất kỳ số Tứ giác 04/12/15 Bộ Môn CNPM - ĐHBK Hà Nội Điểm 8.2 Biểu diễn UML Điểm gọi đối tượng thành phần Tứ giác lớp chứa đối tượng thành phần Điểm khai báo sử dụng giống liệu thành phần Tứ giác Tứ giác 04/12/15 Điểm Bộ Môn CNPM - ĐHBK Hà Nội 8.2 Biểu diễn UML Một số thuật ngữ liên quan: Kết tập Aggregation (has a) Composition (use a) Liên kết 04/12/15 Association Bộ Môn CNPM - ĐHBK Hà Nội 10 Nội dung 8.1 Tổng quan kết tập 8.2 Biểu diễn UML 8.3 Thực thi Java 04/12/15 Bộ Môn CNPM - ĐHBK Hà Nội 11 8.3 Thực thi Java class Diem { private int x, y; public Diem(int _x, int _y){ x = _x; y = _y; } public void setX(int _x){x=_x;} public int getX() {return x;}//… } class TuGiac { private Diem d1, d2; private Diem d3, d4; public TuGiac(Diem _d1, Diem _d2, Diem _d3, Diem _d4){ d1=_d1; d2=_d2; d3=_d3; d4=_d4; } public void setD1(Diem _d1){ d1=_d1;} public Diem getD1(){return d1;} //… } 04/12/15 Bộ Môn CNPM - ĐHBK Hà Nội 12 8.3 Thực thi Java public class Test { public static void main(String arg[]) { Diem d1 = new Diem(0,0); Diem d2 = new Diem(0,1); Diem d3 = new Diem (1,1); Diem d4 = new Diem (1,0); TuGiac tg1 = new TuGiac(d1, d2, d3, d4); TuGiac tg2 = new TuGiac(); tg2.setD1(d1); // … } } 04/12/15 Bộ Môn CNPM - ĐHBK Hà Nội 13 8.3 Thực thi Java class Person { private String name; private Date bithday; public String getName() { return name; } } class Employee { private Person me; private double salary; public String getName() { return me.getName(); } } 04/12/15 Bộ Môn CNPM - ĐHBK Hà Nội 14 8.3 Thực thi Java class Manager { private Employee me; private Employee assistant; public setAssistant(Employee e) { } } Manager junior = new Manager(); Manager senior = new Manager(); // senior.setAssistant(junior); error 04/12/15 Bộ Môn CNPM - ĐHBK Hà Nội 15 [...]...Nội dung 8. 1 Tổng quan về kết tập 8. 2 Biểu diễn trên UML 8. 3 Thực thi trên Java 04/12/15 Bộ Môn CNPM - ĐHBK Hà Nội 11 8. 3 Thực thi trên Java class Diem { private int x, y; public Diem(int _x, int _y){ x = _x; y = _y; } public void setX(int _x){x=_x;} public int getX() {return... 04/12/15 Bộ Môn CNPM - ĐHBK Hà Nội 12 8. 3 Thực thi trên Java public class Test { public static void main(String arg[]) { Diem d1 = new Diem(0,0); Diem d2 = new Diem(0,1); Diem d3 = new Diem (1,1); Diem d4 = new Diem (1,0); TuGiac tg1 = new TuGiac(d1, d2, d3, d4); TuGiac tg2 = new TuGiac(); tg2.setD1(d1); // … } } 04/12/15 Bộ Môn CNPM - ĐHBK Hà Nội 13 8. 3 Thực thi trên Java class Person { private String... public String getName() { return name; } } class Employee { private Person me; private double salary; public String getName() { return me.getName(); } } 04/12/15 Bộ Môn CNPM - ĐHBK Hà Nội 14 8. 3 Thực thi trên Java class Manager { private Employee me; private Employee assistant; public setAssistant(Employee e) { } } Manager junior = new Manager(); Manager senior = new Manager(); // senior.setAssistant(junior); ... kết tập Mô tả khái niệm liên quan đến kết tập Biểu diễn kết tập UML Sử dụng vấn đề với ngôn ngữ lập trình Java 04/12/15 Bộ Môn CNPM - ĐHBK Hà Nội Nội dung 8. 1 Tổng quan kết tập 8. 2... diễn UML 8. 3 Thực thi Java 04/12/15 Bộ Môn CNPM - ĐHBK Hà Nội 8. 1 Tổng quan kết tập Ví dụ: Điểm Tứ giác gồm điểm Kết tập 04/12/15 Bộ Môn CNPM - ĐHBK Hà Nội 8. 1 Tổng quan kết tập Tái... (“use-a”) Kết tập tái sử dụng thông qua đối tượng 04/12/15 Bộ Môn CNPM - ĐHBK Hà Nội Nội dung 8. 1 Tổng quan kết tập 8. 2 Biểu diễn UML 8. 3 Thực thi Java 04/12/15 Bộ Môn CNPM - ĐHBK Hà Nội 8. 2