Professional Documents
Culture Documents
* Mục tiêu:
Trong phòng thí nghiệm này, bạn sẽ thực hành với:
Threads
Bạn cần sử dụng dự án mà bạn đã làm với các phòng thí nghiệm trước đó bao gồm cả AimsProject và các dự án khác.
1. Nhập AimsProject - Mở
Nhập zip để tìm Tệp lưu trữ nếu bạn đã xuất dưới dạng tệp zip trước đó.
Bạn có thể chọn Dự án hiện có vào Không gian làm việc nếu bạn muốn mở một dự án hiện có trong
máy tính của mình. Bỏ qua bước này nếu AimsProject đã được mở trong không gian làm việc.
- Nhấp vào Tiếp theo và duyệt đến một tệp zip hoặc một dự án để mở
2. Mở rộng dự án AIMS để cho phép đặt hàng đĩa CD (Đĩa nhỏ gọn)
Như với DigitalVideoDisc và Book, lớp CompactDisc sẽ mở rộng Media, kế thừa các trường
tiêu đề, danh mục và chi phí cũng như các phương thức liên quan.
- Mở lớp Media
1
Machine Translated by Google
- Sửa đổi lớp Media và làm cho nó trở nên trừu tượng
- Giữ ba trường Phương tiện: tiêu đề, danh mục, chi phí và các phương pháp liên quan của chúng
2.2. Tạo lớp Đĩa mở rộng lớp Phương tiện - Lớp Đĩa có hai trường:
- Tạo phương thức getter / setter cho các trường này - Tạo
2.3. Tạo lớp Bản nhạc để mô hình một bản nhạc trên đĩa compact và sẽ lưu trữ thông tin bao gồm tiêu
đề và độ dài của bản nhạc - Mở lớp Bản nhạc - Thêm hai trường: Tên chuỗi và độ dài int
- Đặt các trường này ở chế độ riêng tư và tạo các phương thức getter và setter của chúng ở chế độ công khai
- Tạo các phương thức getter và setter cho chỉ nghệ sĩ, đặt chúng ở chế độ công khai
• Phương thức addTrack () sẽ kiểm tra xem bản nhạc đầu vào đã có trong danh sách các bản nhạc chưa và
• Phương thức removeTrack () nên kiểm tra xem bản nhạc đầu vào có tồn tại trong danh sách các bản nhạc hay không và
nhạc trong CD có độ dài nên độ dài của CD phải bằng tổng độ dài của
diện có thể chơi được tạo để cho phép các lớp chỉ ra rằng chúng triển khai một trò chơi ()
phương pháp
2
Machine Translated by Google
- Thêm vào giao diện Playable nguyên mẫu phương thức: public void play ();
• Đối với mỗi lớp CompactDisc và DigitalVideoDisc này, hãy chỉnh sửa mô tả lớp để bao gồm các từ khóa
• Đối với lớp Theo dõi, hãy chèn các từ khóa được triển khai Có thể phát sau các từ khóa
• Vì lớp CompactDisc chứa ArrayList of Tracks nên mỗi phần trong số đó có thể được phát riêng.
Phương thức play () sẽ xuất một số thông tin về CompactDisc sang bảng điều khiển
• Lặp qua từng rãnh của danh sách mảng và gọi phương thức play () của Track
sẽ cập nhật lớp Aims để kiểm tra các thay đổi của mình.
• Tạo thêm lựa chọn cho ứng dụng bảng điều khiển của bạn
• Cập nhật menu lựa chọn: o Để thêm mặt hàng mới vào
o Đối với CompactDisc, chương trình sẽ cho phép thêm thông tin của các Bản nhạc
o Khi thêm cd / dvd vào đơn đặt hàng, người dùng có thể yêu cầu phát chúng
Một lớp được gọi là MemoryDaemon chạy như một luồng daemon, theo dõi việc sử dụng bộ nhớ trong hệ
thống.
3
Machine Translated by Google
- Lớp MemoryDaemon thực thi giao diện java.lang.Runnable - Thực hiện phương thức run () - Thêm trường long
memoryUsed vào lớp MemoryDaemon - Khởi tạo trường này thành 0. Nó theo dõi việc sử dụng bộ nhớ trong hệ thống.
- Thêm mã vào phương thức run () để kiểm tra việc sử dụng bộ nhớ khi chương trình chạy Tạo một
vòng lặp sẽ ghi lại lượng bộ nhớ được sử dụng khi phương thức Aims.main () thực thi.
một đối tượng MemoryDaemon mới và chạy nó như một luồng daemon - Mở phương thức main () của lớp Aims - Thêm mã để
tạo một đối tượng MemoryDaemon mới - Sử dụng đối tượng này trong phương thức khởi tạo của lớp Thread để tạo một đối
tượng Thread mới - Sử dụng phương thức setDaemon () để chỉ ra rằng luồng này là một tiểu trình daemon, hãy thêm mã vào