Theory

  1. Session 1:
    • Introduction to Threads
    • More on Threads
  2. Session 2:
    • java.lang Package
    • java.io Package
  3. Session 3:
    • java.util and Collections API
  4. Session 4:
    • Generics and java.util Package
    • Regular Expressions
  5. Session 5:
    • Annotations
    • Reflection API

Lab

Bài 1. Viết chương trình thực hiện các yêu cầu sau:

  • Main thread:
    • Tạo ra 2 thread (Thread 1 và Thread 2) như yêu cầu bên dưới. Cho 2 thread đó cùng chạy.
    • Khi Thread 1 kết thúc, thông báo để Thread 2 cũng kết thúc công việc của mình
  • Thread 1: cứ mỗi 2 giây, tạo ra 5 số tự nhiên (bất kỳ) và thông báo để Thread 2 xử lý các con số đó. Kết thúc sau 10 vòng lặp.
  • Thread 2: lặp lại cho đến khi nào Main thread thông báo Thread 2 kết thúc:
    • đợi các con số được sinh ra bởi Thread 1
    • khi được Thread 1 thông báo, in ra màn hình (trên cùng một dòng) bình phương của 5 con số vừa tạo

Bài 2. Viết chương trình thực hiện các yêu cầu sau:

  • Đọc 2 cạnh tam giác vuông từ một file text (input.txt, mỗi cạnh là một số tự nhiên viết trên 1 dòng). Tính độ dài cạnh huyền và ghi kết quả ra một file text khác (output.txt)
  • Ghi tất cả các biến môi trường (system properties) ra một file text; mỗi dòng ghi một biến với định dạng: tên biến = giá trị
  • Tạo một class Employee có các thông tin sau: firstName, lastName, address (cùng kiểu String), hiredDate (kiểu Date) và salary (kiểu float). Tạo và ghi ra cùng một file 3 đối tượng của class Employee đó. Đọc lại từ file và hiển thị ra màn hình thông tin về 3 đối tượng đọc được.