... ); postorder( node.rightNode ); System.out.print( node.data + " " ); }}1 Lập trìnhJavacơ bản Cao Đức Thông - Trần Minh Tuấncdthong@ifi.edu.vn, tmtuan@ifi.edu.vn 19Sử dụng Stackpublic ... theo kiểu LIFO (Last In First Out), phần tử vào sau cùng sẽ được lấy ra trước.•Hai thao tác cơbản trên Stack•Chèn phần tử: Luôn chèn vào đỉnh Stack (push)•Lấy ra phần tử: Luôn lấy ra ... System.out.println(names); }}43Giao tiếp Map•Giao tiếp Map cung cấp các thao tác xử lý trên các bảng ánh xạ (Bảng ánh xạ lưu các phần tử theo khoá và không được có 2 khoá trùng nhau).•Một số phương...
... lastNode(b)5new ListNode71 Lập trìnhJavacơ bản Cao Đức Thông Trần Minh Tuấncdthong@ifi.edu.vn, tmtuan@ifi.edu.vn 50Ví dụ 1: TreeSet// This program sorts a set of namesimport java. util.*;public class TreeSetTest1{ public static void main(String[] args) { SortedSet names = new TreeSet(); names.add(new String("Minh Tuan")); names.add(new String("Hai Nam")); names.add(new String("Anh Ngoc")); names.add(new String("Trung Kien")); names.add(new String("Quynh Chi")); names.add(new String("Thu Hang")); System.out.println(names); }}31Bài tập tại lớp•Bài 1: Dùng Stack để viết chương trình in ra dạng nhị phân của một số nguyên dương cho trước.•Bài 2: Cài đặt phương thức search trong lớp Tree để tìm một phần tử có giá trị cho trước.7Cài đặt Linked List// Dinh nghia mot node trong linked list ... 39Giao tiếp Set•Set kế thừa từ Collection, hỗ trợ các thao tác xử lý trên collection kiểu tập hợp (Một tập hợp yêu cầu các phần tử phải không được trùng lặp).•Set không có thêm phương thức riêng ngoài các phương thức kế thừa từ Collection.48Mô tả các cài đặt•ArrayList: Mảng động, nếu các phần tử thêm vào vượt quá kích cỡ mảng, mảng sẽ tự động tăng kích cỡ.•LinkedList: Danh sách liên kết 2 chiều. Hỗ trợ thao tác trên đầu và cuối danh sách. •HashSet: Bảng băm.•LinkedHashSet: Bảng băm kết hợp với linked list nhằm đảm bảo thứ tự các phần tử.•TreeSet: Cây đỏ đen (red ... Cây con phải38Giao tiếp List•List kế thừa từ Collection, nó cung cấp thêm các phương thức để xử lý collection kiểu danh sách (Danh sách là một collection với các phần tử được xếp theo chỉ số).•Một số phương thức của List•Object get(int index);•Object set(int index, Object o);•void add(int index, Object o);•Object remove(int index);•int indexOf(Object o);•int lastIndexOf(Object o);21Cài đặt Queuepublic class Queue{ private LinkedList queueList; public Queue() { queueList = new LinkedList(); } public void enqueue( int value ) { queueList.insertAtBack( value ); } public int dequeue() { return queueList.removeFromFront(); } public boolean isEmpty() { return queueList.isEmpty(); } public void print() { queueList.print(); }}10Cài đặt Linked List public int removeFromBack() {int removeItem = ...
... ra. Chương trình dừng lại ngay lập tức, toàn bộ phần mã phía sau sẽ không được thực thi.• Java hỗ trợ cách thức để xử lý ngoại lệ (exception handling) tuỳ theo nhu cầu của chương trình. 30Ném ... nên sử dụng ngoại lệ thay cho các luồng điều khiển trong chương trình. • Ví dụ: Kiểm tra delta trong chương trình giải phương trình bậc 2.•Nên thiết kế và sử dụng ngoại lệ một cách thống ... người dùng nhập lại.5Xử lý lỗi và ngoại lệ• Trong Java, việc xử lý lỗi có thể được cài đặt trong một nhánh độc lập với nhánh chính của chương trình. • Lỗi được coi như những trường hợp ngoại...
... (extends) từ một lớp.1 Lập trìnhJavacơ bản Cao Đức Thông - Trần Minh Tuấncdthong@ifi.edu.vn, tmtuan@ifi.edu.vn 23Ví dụ về kế thừa trong Java // File InheritanceTest .java public class InheritanceTest{ ... nhật.36 Java vs C++8. Java không có con trỏ.9. Java không có huỷ tử (destructor), nó chỉ có phương thức finalize() được gọi bởi Garbage Collector.10. Java không hỗ trợ đối số mặc định.11. Java ... các thực thể• Dễ phát triển, mở rộng chương trình Object AObject CObject BObject D3Các phương pháp lập trình •Step-by-Step Programming• Lậptrình từng bước•Machine Language, Assembly...
... dụng.5Kiến trúc của Java • Java Platform• Java Virtual Machine (Java VM)• Java Application Programming Interface (Java API)Hardware-Platform Java VM Java APImyProgram .java Java PlatformMã nguồn3Giới ... dung động (web applet)•Hiện nay, Java được sử dụng để phát triển nhiều loại ứng dụng khác nhau: cơ sở dữ liệu, mạng, Internet, viễn thông 1 Lập trìnhJavacơ bản Cao Đức Thông - Trần Minh Tuấncdthong@ifi.edu.vn, ... dụng Java •Hai loại ứng dụng Java •Application: Ứng dụng độc lập •Applet: Ứng dụng chạy trên Web•Thư viện lớp Java •Bộ JDK bao gồm rất nhiều lớp chuẩn đã được xây dựng sẵn.• Lập trình...
... phương thức phải có một phạm vi nhất định35 Java vs C++1. Một chương trìnhJava chạy chậm hơn so với một chương trình C tương ứng khoảng 20 lần.2. Java không có kiểu liệt kê (enum), kiểu cấu ... nó.36 Java vs C++8. Java không có con trỏ.9. Java không có huỷ tử (destructor), nó chỉ có phương thức finalize() được gọi bởi Garbage Collector.10. Java không hỗ trợ đối số mặc định.11. Java ... OOP trong Java •Các phương pháp lập trình •Giới thiệu về OOP•Kế thừa (Inheritance)•Đa hình (Polymorphism)•Giao tiếp (Interface)•Lớp trừu tượng (Abstract)• Gói (Packages)• Java vs C++•Bài...
... "main" java. lang.ArithmeticException: / by zero at MyDivision.C(MyDivision .java: 14) at MyDivision.B(MyDivision .java: 11) at MyDivision.A(MyDivision .java: 8) at MyDivision.main(MyDivision .java: 4)Giải ... ra. Chương trình dừng lại ngay lập tức, toàn bộ phần mã phía sau sẽ không được thực thi.• Java hỗ trợ cách thức để xử lý ngoại lệ (exception handling) tuỳ theo nhu cầu của chương trình. 21Hai ... tập4Xử lý lỗi và ngoại lệ⇒Mã lệnh và mã xử lý lỗi nằm xen kẽ khiến lập trình viên khó theo dõi được thuật toán chính của chương trình. ⇒Khi một lỗi xảy ra tại hàm A, tất cả các lời gọi hàm lồng...
... trong Java chỉ nhận giá trị boolean.6. Trong Java, mọi biến không thuộc kiểu nguyên thuỷ đều phải tạo ra bằng từ khoá new.7. Java không có tiền xử lý (preprocessor)1 Lập trìnhJavacơ bản Cao ... file TimeTest .java. Nó dùng để kiểm tra lớp Time. Lớp TimeTest chứa hàm main.•Khi chạy chỉ cần gõ:•javac TimeTest .java • java TimeTest• Java sẽ tự động tìm và dịch file Time .java 26Đa hình ... && second < 60 ) ? second : 0 ); } 13•javac TimeTest .java • java TimeTestChạy TimeTest36 Java vs C++8. Java không có con trỏ.9. Java không có huỷ tử (destructor), nó chỉ có phương...
... tập tin php.ini [Java] java. library.path=/path/to/library java. class.path=/classpath/ extension_dir=/path/to/extensions extension=libphp _java. so bạn cần đưa đường dẫn Java chính xác. Đoạn ... thuộc tính của Java <? $system = new Java( '&apos ;java. lang.System''); echo ''<P> ;Java version = '' . $system->getProperty('&apos ;java. version'') ... PHP và Java Một điều khá thú vị các các chức năng của PHP là khả năng sử dụng các phương thức của các đối tượng Java, mở ra khả năng tích hợp các ứng dụng PHP của bạn với các ứng dụng Java. ...
... chiếu, không thông qua kiểu khai báo của tham chiếu.• Trong Java, các phương thức luôn mang tính đa hình.26 Lập trìnhJavacơ bản Cao Đức Thông - Trần Minh Tuấncdthonq@ifi.edu.vn, tmtuan@ifi.edu.vnPhạm ... Transport.*;Ví dụ 3: import java. awt.Point;Point p = new Point(l,2);• sử dụng package - cách 2: sử dụng trực tiếp java. awt.Point p = new java. awt.Point(l,2); javax.swing JOptionPane.showMessageDialog( ... OOP trong Java • Các phương pháp lập trình • Giới thiệu về OOP• Kế thừa (Inheritance)• Đa hình (Polymorphism)• Giao tiếp (Interface)• Lớp trừu tượng (Abstract)• Gói (Packages)• Java vs C++•...
... kiểu trình bày (Layout manager)• Null layout• Flow layout• Border layout• Grid layout• GridBag LayoutLayout manager được thiết lập bằng phương thức ‘setLayout()’18/25Quản lý cách trình ... trong một container• Hàm thiết lập setLayout(new BorderLayout())• Thêm thành phần vào layoutadd(b1,BorderLayout.NORTH);21/25Quản lý cách trình bàyBảng sau đây chỉ ra các sự kiện khác ... các thành phần khác nhau đểtạo GUI:• Vật chứa (Container )• Thành phần (Component)• Trình quản lý cách trình bày (Layout manager)• Đồ họa (Graphic) và các tính năng vẽ (draw)• Phông chữ (Font)•...
... ngữ lập trình. Bài 3: Toán tử và biểu thức trong PHP Đối với mọi ngôn ngữ lập trình, toán tử và biểu thức luôn là những kiến thức cơ bản được sử dụng để xử lý các thao tác trong giai đoạn lập ... số học: Là dạng phép tính giản đơn cộng, trừ, nhân, chia trong số học. Ngoài ra còn có phép chia lấy dư (%). Được sử dụng để lấy ra đơn vị dư của 1 phép toán. 20 - Bài họclậptrình PHP cơbản ... 16 else 20 - Bài họclậptrình PHP cơbản và ứng dụng Sưu tầm và chỉnh sửa: Nguyễn Hữu Duy C.E – UTEHY Nguồn: http://qhonline.info Trang 7 B- Các biểu thức cơbản trong PHP: 1- Biểu...
... cải tiến chương trình vẽ bóng.2. Mở rộng chương trình vẽ bóng để cho phép hai quả bóng cùng chạy trên màn hình với tốc độ khác nhau (Xem lạibàivề Graphics).3. Mở rộng chương trình vẽ bóng để ... add(startButton);add(stopButton);startButton.addActionListener(this);stopButton.addActionListener(this);timer = new javax.swing.Timer(10, this);count = 0;} // end init()Bài tập505. Viết chương trình tạo 2 tuyến: một tuyến tìm kiếm các số nguyên tố ... Mộtkỹ thuậthoạt hình khác là xem mỗi đốitượng chuyển động như mộttuyến độclập, ví dụ: quả bóng. Tuyến chính củachương trình sẽ liên tụclấydữ liệutừ quả bóng đểthể hiện ra màn hình (paint() và...