| 
        Sessions
        
         
  | 
      
         
        
         
  | 
    
| Session | Lecture Topics | Assignment | Due (email by 5 p.m.) | 
| 1: Tuesday, June 5
       This session covers the reading in Day 1: 21st Century Java  | 
    Introduction to class and
      explanation of the syllabus
       Demonstration of the “Hello World” Java application Demonstration of the Java Glossary applet What is Programming? 
 Sun’s web site 
  | 
    Download, install, and run the
      “Hello, World” program 
       [working code]  | 
    Nothing this week | 
| 2:  Thursday, June 7 This session covers the reading in Day 3: ABCs of Java, and Day 5: Lists, Logic, and Loops  | 
    Review of
      Session 1 and Short Quiz
       Basics of (Java) Programming Language 
  | 
    Three
      assignments:
       See this session's lecture notes [working code]  | 
    |
| 3:  Tuesday, June 12 This session covers the reading in Day 2: A Taste of Object-Oriented Programming  | 
    Review of Session 2  and
      Short Quiz
       Object-Oriented Programming (basics) 
  | 
    
       Tower of Hanoi design exercise [see lecture notes]  | 
    Status of downloading and
      configuring your SDK.
       Homework 2.  | 
  
| 4:  Thursday, June 14 This session covers the readings in and Day 4: Working with Objects and Day 6: Creating Classes and Methods  | 
    Review of
      Session 3 and Short Quiz
       Object-Oriented Programming (continued) 
  | 
    Assignment: Design the library book tracking system, but this time, use
      polymorphism, encapsulation, and an interface to create objects:
      
 [design exercise]  | 
    |
| 5:  Tuesday, June 19 This session covers the reading in Day 15: Packages, Interfaces, and Other Features and Day 16: Error Handling and Security  | 
    Review of Session 4 and Short Quiz
       Inheritance: When To Use and Not Use It 
 Input/Output (io package) 
 Exception Handling 
 Packaging System: import statement 
  | 
    See lecture notes | Homework 3 and Homework 4 | 
| 6:  Thursday, June 21 This session covers the JavaDoc material in Appendix C, pp. 598 - 602  | 
    Review of
      Session 5 and Short Quiz
       Midterm Exam Review of the midterm Overview of JavaDoc as used in Sun’s Java APIs Commenting Your Code With JavaDoc 
  | 
    ||
| 7:  Tuesday, June 26 This session covers the reading in Day 7: Writing Java Applets, and Day 12: Color, Fonts, and Graphics  | 
    Student presentations on Java
      technologies
       individual or team of two presentations of 5-10 minutes each on a topic
      such as: or TomCat http://jakarta.apache.org/tomcat/index.html --ant (Open Source build tool) at http://jakarta.apache.org/ant/index.html Introducing Applets 
  | 
    
      Write an applet that draws
      geometric shapes and also uses color and text
       [working code]  | 
    Homework 5 and Homework 6 | 
| 8:  Thursday, June 28 This session covers the reading in Day 8: Working with Swing, and Day 11: Responding to User Input in an Applet  | 
    Review of
      Session 7
       Applets and Event-driven programming in a Graphical User Interface (GUI) 
 Short Quiz  | 
    
       Make your existing applet interactive [working code]  | 
    |
| 9:  Tuesday, July 3 This session covers the reading in Day 9: Building a Swing Interface, and Day 10: Arranging Components on a User Interface  | 
    Review of Session 8 and
      introduction to possible questions for the
      final exam.
       Polymorphism and Inheritance in a GUI 
  | 
    
       
 
  | 
    Homework 7 and Homework 8 | 
| 10:  Thursday, July 5  | 
    Review of
      Session 9 and Short Quiz
       Final Exam Review of the final How you can teach yourself more advanced topics using the APIs: 
 
  | 
    
[updated 23 June 2001]