| # | Date | Topic | Reading | Lab Due |
|---|---|---|---|---|
| 1 | Wed 10Jan | Introduction | 1.1-1.13 | |
| 2 | Mon 15Jan | A first Java program | 1.1-1.15 | |
| 3 | Wed 17Jan | Selection | 1.16-2.8, 4.1-4.6 | |
| 4 | Mon 22Jan | Repetition: for loops | 5.1-5.4, 4.11-4.12 | |
| 5 | Wed 24Jan | Subclasses, applets | ch3 | Lab 1a: selection |
| 6 | Mon 29Jan | for, while, do, switch | ch5 | |
| 7 | Wed 31Jan | Arrays, sorting | ch7 | Lab 1b: repetition |
| 8 | Mon 5Feb | Methods | ch6 | |
| 9 | Wed 7Feb | JApplet | ch6 | Lab 2: Arrays |
| 10 | Mon 12Feb | Abstract Classes | ch8 | |
| 11 | Wed 14Feb | Packages | ch8 | |
| 12 | Mon 19Feb | static keyword | ch8 | |
| 13 | Wed 21Feb | Midterm | Lab 3: Recursion (extended to Fri 23Feb) | |
| Mon 26Feb | (Reading break) | |||
| Wed 28Feb | (Reading break) | |||
| 14 | Mon 5Mar | Inheritance | ch9 | |
| 15 | Wed 7Mar | Polymorphism | ch10 | |
| 16 | Mon 12Mar | Swing Overview | 11.1-11.7 | |
| 17 | Wed 14Mar | Event Handling and Swing Widgets | 11.8-11.10 | Lab 4: OO: Sets and Vectors |
| 18 | Mon 19Mar | Sequential-Access Text Files | 14.1-14.5, 14.9 | |
| 19 | Wed 21Mar | Serializing Objects | 14.6-14.7 | |
| 20 | Mon 26Mar | Byte-Based I/O | 14.8 | |
| 21 | Wed 28Mar | TCP Sockets | 24.1-24.6 | |
| 22 | Mon 2Apr | UDP Packets | 24.7 | |
| 23 | Wed 4Apr | Threads | 23.1-23.4 | |
| Mon 9Apr | (Easter Monday holiday) | |||
| 24 | Wed 11Apr | Synchronization | 23.5 | Lab 5: File I/O |
| Fri 13Apr | (last day for late labs) | |||
| 25 | Mon 16Apr | Course Review | ||
| Fri 20Apr | Final Exam (2-4pm) | |||