Professional Documents
Culture Documents
Bài tâ ̣p 1:
- Thiết kế mô ̣t đối tượng MessageQueue được implement interface Channel. Channel
này có thể chức mô ̣t loại đối tượng duy nhất được khai báo dạng Generic.
- Interface có 2 phương thức và được Implement bởi Class MessageQueue
Bài tâ ̣p 2: Thiết kế class OSProcess như hình vẽ sau dùng để khởi tạo tiến trình. Viết
class Test.
Bài tâ ̣p 3: Viết mô ̣t Thread, khởi chạy, ngừng và tạm nghĩ
Bài tâ ̣p 4: Viết class Consumer, nhiê ̣m vụ tiêu thụ các item bên trong Channel. Class
Consumer implements Interface Runnable và chạy như mô ̣t Thread với thời gian nghĩ
giữa mỗi lần chạy là 1000ms.
Bài tâ ̣p 5: Viết class Producer, nhiê ̣m vụ sản xuất ra các item đưa vào Channel. Class
Producer implements Interface Runnable và chạy như mô ̣t Thread với thời gian nghĩ giữa
mỗi lần chạy là 1000ms.
Bài tâ ̣p 6: Thử thay đổi thời gian nghĩ của 2 đối tượng Consumer và Producer đồng thời
kiểm tra số phần tử trong Channel để biết khi nào Channel đầy và khi nào Channel rỗng
item.
Bài tâ ̣p 7: Xây dựng class ThreadGroup để nhóm các Thread lại với nhau. Mỗi
ThreadGroup có thể bao gồm nhiều Consumer hoă ̣c nhiều Producer.
Bài tâ ̣p 8: Sử dụng ThreadPool như hình dưới
Bài tập 9: Viết một ứng dụng đồng hồ có có 2 nút Start, Stop. Sử dụng đối tượng
JComponent và JPanel như mô tả bên dưới
SecondCounterLockup.java
----------------------------------------------------------------------------
package counter;
import java.awt.*;
import javax.swing.*;
public SecondCounterLockup() {
}
public void runClock() {
}
-------------------------------------------------------------------------------------------
SecondCounterLockupMain.java
-------------------------------------------------------------------------------------------
package counter;
import javax.swing.JButton;
import javax.swing.JPanel;
public SecondCounterLockupMain() {
}