Bài giảng Lập trình hướng đối tượng - Trần Đình Quế

Tóm tắt Bài giảng Lập trình hướng đối tượng - Trần Đình Quế: ...ác trường hợp nhận giá trị False Đoạn chương trình sau xác định giá trị trong một biến nguyên và hiển thị ngày trong tuần được thể hiện dưới dạng chuỗi. Để kiểm tra các giá trị nằm trong khoảng từ 0 đến 6, chương trình sẽ thông báo lỗi nếu nằm ngoài phạm vi trên. 46 Chương trình 3.4 pack...p đoạn sau chốt } } 83 5.3 NGĂN XẾP VÀ HÀNG ĐỢI 5.3.1 Ngăn xếp Ngăn xếp (stack) có các thuộc tính cục bộ: • Mảng lưu các nút của ngăn xếp Các thao tác đối với ngăn xếp: • Thêm vào một nút • Lấy ra một nút Định nghĩa một nút Để đơn giản, ta chỉ định nghĩa một nút có giá trị ki...6.1.3 Các sự kiện cơ bản của đối tượng Mỗi đối tượng component có một số sự kiện xác định, phát sinh từ chính đối tượng đó. Java cung cấp một số lớp sự kiện cơ bản nằm trong thư gói java.awt.event: import java.awt.event.*; Các lớp sự kiện cơ bản của các đối tượng bao gồm: • ActionEvent: Xu...

pdf173 trang | Chia sẻ: havih72 | Lượt xem: 162 | Lượt tải: 0download
Nội dung tài liệu Bài giảng Lập trình hướng đối tượng - Trần Đình Quế, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
 màu nền theo màu tương ứng 
 return; 
} 
 } 
} 
} 
5. Gợi ý (tự viết hàm main để test chương trình): 
public class Bai5 extends Frame implements ActionListener{ 
 String[10] colors = {Blue, Cyan, Gray, Green, Magenta, 
Orange, Pink, Red, White, Yellow}; 
 MenuBar mnb; 
Menu mn; 
public Bai5(){ 
 super(“Bai5!”); 
 this.setLayout(new FlowLayout()); 
 mnb = new MenuBar(); 
 this.setmenuBar(mnb); 
 mn = new Menu(); 
 mn.addActionListener(this); 
 mnb.add(mn); 
 for(int i=0; i<colors.length; i++){ 
 mn.addItem(new MenuItem(colors[i])); 
 } 
// Phương thức bắt sự kiện click vào nút đóng frame 
this.addWindowListener(new WindowAdapter(){ 
 public void windowClosing(WindowEvent e){ 
 System.exit(0); 
 } 
169 
}); 
} 
/* Phương thức xử lí sự kiện nút được nhấn */ 
public void actionPerformed(ActionEvent ae){ 
 for(int i=0; i<colors.length; i++) 
if(ae.getActionCommand().equals(colors[i])){ 
 // Thiết lập màu nền theo màu tương ứng 
 return; 
} 
} 
} 
6. Tương tự bài 5, thay Menu bằng MenuPopup. 
7. Làm tương tự các bài từ 1 đến 6, chuyển sang applet. 
170 
TÀI LIỆU THAM KHẢO 
Tài liệu tiếng Anh 
1. Advanced Java. Aptech Worldwide Express. 
2. An Introduction to Object-Oriented Programming with Java. C. Thomas Wu. McGraw-
Hill Inc, 1999. 
3. Big Java. Cay Horstmann. John Wiley & Sons Inc, 2002. 
4. Core Java. Aptech Worldwide Express. 
5. Data Structures and Algorithms in Java, second edition. Michael T. Goodrich and 
Roberto Tamassia. John Wiley & Sons Inc, 2001. 
6. Introduction to Programming in Java, first edition. J.N. Patterson Hume and Christine 
Stephenson. 2000. 
7. Java Algorithms. Scott Robert Ladd. McGraw-Hill Inc, 1997. 
8. Java Distributed Objects. Bill McCarty and Luke Cassady-Dorion. A Division of 
Macmillan Computer Publishing. 
9. Java – How to Program, fifth edition. H.M.Deitel and P.J. Deitel. Prentice Hall Inc, 2003. 
10. Java Language Reference, second edition. Mark Grand. O’reilly Inc, 1997. 
11. Java Software Solutions – Foundations of Program Designe. John Lewis and William 
Loftus. Addison-Weslay Inc, 1998. 
12. Objects, Abstractions, Data Structures and Designe using Java. Elliot B. Koffman and 
Paul A.T. Wolfgang. John Wiley & Sons Inc, 2005. 
13. The JavaTM Class Libraries – An Annotated Reference, the Java series. Patrick Chan and 
Rosanna Lee. Addison-Wesley Inc, 1996. 
Tài liệu tiếng Việt 
1. Giáo trình Lí thuyết và Bài tập Java. Trần Tiến Dũng. NXB Giáo dục, 1999. 
2. Lập trình Java. NXB Thống Kê, 2000. 
171 
MỤC LỤC 
GIỚI THIỆU..................................................................................................................................... 2 
PHẦN 1 ............................................................................................................................................ 4 
NHỮNG KHÁI NIỆM CƠ BẢN ..................................................................................................... 4 
CỦA LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG..................................................................................... 4 
CHƯƠNG 1...................................................................................................................................... 5 
TỔNG QUAN VỀ CÁCH TIẾP CẬN ............................................................................................. 5 
HƯỚNG ĐỐI TƯỢNG .................................................................................................................... 5 
1.1 PHƯƠNG PHÁP TIẾP CẬN CỦA LẬP TRÌNH TRUYỀN THỐNG............................5 
1.1.1 Lập trình tuyến tính ...................................................................................................5 
1.1.2 Lập trình cấu trúc.......................................................................................................5 
1.2 PHƯƠNG PHÁP TIẾP CẬN HƯỚNG ĐỐI TƯỢNG ....................................................7 
1.2.1 Phương pháp lập trình hướng đối tượng....................................................................7 
1.2.2 Phương pháp phân tích và thiết kế hướng đối tượng.................................................9 
1.3 SO SÁNH HAI CÁCH TIẾP CẬN ................................................................................11 
1.4 XU HƯỚNG PHÁT TRIỂN CỦA LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG ....................12 
TỔNG KẾT CHƯƠNG 1.....................................................................................................13 
CHƯƠNG 2.................................................................................................................................... 15 
NHỮNG KHÁI NIỆM CƠ BẢN CỦA.......................................................................................... 15 
LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG ............................................................................................ 15 
2.1 CÁC KHÁI NIỆM CƠ BẢN..........................................................................................15 
2.1.1 Đối tượng.................................................................................................................15 
2.1.2 Lớp đối tượng ..........................................................................................................16 
2.1.3 Trừu tượng hoá đối tượng theo chức năng ..............................................................17 
2.1.4 Trừu tượng hoá đối tượng theo dữ liệu ...................................................................18 
2.1.5 Khái niệm kế thừa....................................................................................................19 
2.1.6 Khái niệm đóng gói .................................................................................................20 
2.1.7 Khái niệm đa hình ...................................................................................................21 
2.2 SO SÁNH LỚP VÀ CẤU TRÚC...................................................................................22 
2.3 THÀNH PHẦN PRIVATE VÀ PUBLIC CỦA LỚP ....................................................24 
2.4 MỘT SỐ NGÔN NGỮ LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG......................................24 
2.4.1 C++..........................................................................................................................25 
2.4.2 ASP.NET và C#.NET..............................................................................................25 
2.4.3 Java ..........................................................................................................................26 
TỔNG KẾT CHƯƠNG 2.....................................................................................................26 
CÂU HỎI VÀ BÀI TẬP CHƯƠNG 2 .................................................................................27 
PHẦN 2 .......................................................................................................................................... 28 
LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG VỚI JAVA......................................................................... 28 
CHƯƠNG 3.................................................................................................................................... 29 
GIỚI THIỆU VỀ JAVA ................................................................................................................. 29 
3.1 LỊCH SỬ PHÁT TRIỂN CỦA JAVA............................................................................29 
3.1.1 Java ..........................................................................................................................29 
3.1.2 Đặc trưng của ngôn ngữ Java ..................................................................................29 
3.1.3 Cài đặt Java..............................................................................................................32 
172 
3.2 KIẾN TRÚC CHƯƠNG TRÌNH XÂY DỰNG TRÊN JAVA ......................................33 
3.2.1 Kiến trúc chương trình Java ....................................................................................33 
3.2.2 Chương trình Java đầu tiên......................................................................................36 
3.2.3 Phân tích chương trình đầu tiên...............................................................................36 
3.3 CÁC KIỂU DỮ LIỆU VÀ TOÁN TỬ CƠ BẢN TRÊN JAVA ....................................38 
3.3.1 Khai báo biến...........................................................................................................38 
3.3.2 Kiểu dữ liệu .............................................................................................................39 
3.3.3 Các toán tử...............................................................................................................40 
3.4 CÁC CẤU TRÚC LỆNH TRÊN JAVA ........................................................................44 
3.4.1 Câu lệnh if-else........................................................................................................44 
3.4.2 Câu lệnh switch-case ...............................................................................................45 
3.4.3 Vòng lặp While........................................................................................................46 
3.4.4 Vòng lặp do-while ...................................................................................................47 
3.4.5 Vòng lặp for.............................................................................................................48 
3.5 CASE STUDY I .............................................................................................................49 
TỔNG KẾT CHƯƠNG 3.....................................................................................................51 
CÂU HỎI VÀ BÀI TẬP CHƯƠNG 3 .................................................................................51 
CHƯƠNG 4.................................................................................................................................... 54 
KẾ THỪA VÀ ĐA HÌNH TRÊN JAVA ....................................................................................... 54 
4.1 KẾ THỪA ĐƠN.............................................................................................................54 
4.1.1 Lớp...........................................................................................................................54 
4.1.2 Sự kế thừa ................................................................................................................58 
4.2 KẾ THỪA BỘI...............................................................................................................60 
4.2.1 Giao tiếp ..................................................................................................................61 
4.2.2 Sử dụng giao tiếp.....................................................................................................62 
4.3 LỚP TRỪU TƯỢNG .....................................................................................................63 
4.3.1 Khai báo...................................................................................................................63 
4.3.2 Sử dụng lớp trừu tượng............................................................................................65 
4.4 ĐA HÌNH .......................................................................................................................66 
4.4.1 Nạp chồng................................................................................................................66 
4.4.2 Đa hình ....................................................................................................................67 
4.5 CASE STUDY II ............................................................................................................68 
4.5.1 Lớp Human..............................................................................................................69 
4.5.2 Lớp Person...............................................................................................................69 
4.5.3 Lớp Employee .........................................................................................................70 
4.5.4 Chương trình demo..................................................................................................72 
TỔNG KẾT CHƯƠNG 4.....................................................................................................73 
CÂU HỎI VÀ BÀI TẬP CHƯƠNG 4 .................................................................................73 
CHƯƠNG 5.................................................................................................................................... 78 
BIỂU DIỄN VÀ CÀI ĐẶT ............................................................................................................ 78 
CÁC CẤU TRÚC DỮ LIỆU TRỪU TƯỢNG TRÊN JAVA........................................................ 78 
5.1 PHƯƠNG PHÁP DUYỆT VÀ ĐỆ QUI ........................................................................78 
5.1.1 Các phương pháp duyệt ...........................................................................................78 
5.1.2 Phương pháp đệ qui .................................................................................................79 
5.2 PHƯƠNG PHÁP SẮP XẾP VÀ TÌM KIẾM.................................................................79 
5.2.1 Các phương pháp sắp xếp........................................................................................79 
5.2.2 Các phương pháp tìm kiếm......................................................................................81 
5.3 NGĂN XẾP VÀ HÀNG ĐỢI.........................................................................................83 
5.3.1 Ngăn xếp..................................................................................................................83 
173 
5.3.2 Hàng đợi ..................................................................................................................85 
5.4 DANH SÁCH KIÊN KẾT..............................................................................................86 
5.4.1 Danh sách liên kết đơn ............................................................................................86 
5.4.2 Danh sách liên kết kép.............................................................................................91 
5.5 CÂY NHỊ PHÂN............................................................................................................96 
5.6 ĐỒ THỊ.........................................................................................................................101 
5.6.1 Biểu diễn đồ thị .....................................................................................................101 
5.6.2 Cài đặt đồ thị không có trọng số............................................................................102 
5.6.3 Cài đặt đồ thị có trọng số.......................................................................................107 
5.7 CASE STUDY III.........................................................................................................111 
TỔNG KẾT CHƯƠNG 5...................................................................................................116 
CÂU HỎI VÀ BÀI TẬP CHƯƠNG 5 ...............................................................................116 
CHƯƠNG 6.................................................................................................................................. 118 
LẬP TRÌNH GIAO DIỆN TRÊN JAVA ..................................................................................... 118 
6.1 GIAO DIỆN VỚI CÁC ĐỐI TƯỢNG CƠ BẢN.........................................................118 
6.1.1 Các đối tượng container cơ bản.............................................................................118 
6.1.2 Các đối tượng component cơ bản ..........................................................................121 
6.1.3 Các sự kiện cơ bản của đối tượng..........................................................................124 
6.2 GIAO DIỆN VỚI CÁC ĐỐI TƯỢNG MULTIMEDIA ..............................................127 
6.2.1 Ô đánh dấu và nút chọn .........................................................................................127 
6.2.2 Lựa chọn ................................................................................................................129 
6.2.3 Danh sách ..............................................................................................................131 
6.2.4 Trình đơn ...............................................................................................................133 
6.3 CÁC KỸ THUẬT TẠO TABLES ...............................................................................136 
6.3.1 Trình bày Flow Layout ..........................................................................................136 
6.3.2 Trình bày Grid Layout...........................................................................................137 
6.3.3 Trình bày Border Layout .......................................................................................138 
6.3.4 Trình bày GridBag Layout ....................................................................................140 
6.3.5 Trình bày Null Layout ...........................................................................................142 
6.4 HTML & APPLET .......................................................................................................143 
6.4.1 Cấu trúc của một Applet........................................................................................143 
6.4.2 Sử dụng applet .......................................................................................................144 
6.4.3 Truyền tham số cho Applet ...................................................................................147 
6.5 GIỚI THIỆU VỀ SWING ............................................................................................148 
6.5.1 Mở rộng các đối tượng component........................................................................148 
6.5.2 Mở rộng các đối tượng container ..........................................................................150 
6.6 CASE STUDY IV ........................................................................................................152 
TỔNG KẾT CHƯƠNG 6...................................................................................................158 
CÂU HỎI VÀ BÀI TẬP CHƯƠNG 6 ...............................................................................159 
HƯỚNG DẪN TRẢ LỜI CÂU HỎI VÀ BÀI TẬP ..........................................................160 
Chương 1 ........................................................................................................................160 
Chương 2 ........................................................................................................................160 
Chương 3 ........................................................................................................................161 
Chương 4 ........................................................................................................................162 
Chương 5 ........................................................................................................................164 
Chương 6 ........................................................................................................................165 
TÀI LIỆU THAM KHẢO ..................................................................................................170 
MỤC LỤC ..........................................................................................................................171 

File đính kèm:

  • pdfbai_giang_lap_trinh_huong_doi_tuong_tran_dinh_que.pdf