Java Basics

LessonsCommentary

Control Flow: Methods

Methods 1 - Introduction to methods
Methods 2 - Actual arguments (parameters)
Methods 3 - Defining a static method
Methods 4 - Local variables
Methods 5 - How call works
Methods 6 - Example with three methods
Methods 7 - Overloading
Commentary: Why use methods?
Commentary: Method terminology
Commentary: Why start with static methods?
Commentary: Pass by value / reference / name / ...
Commentary: Multiple return statements?
Commentary: Missing from Methods chapter

OOP: Defining Value Classes

OOP 1 - Introduction to OOP
OOP 2 - Data - Student Class
OOP 3 - Constructor - Student Class
OOP 4 - Data+Constructor - TimeOfDay
OOP 5 - Overloading Constructors - TimeOfDay
OOP 6 - Validity Checking - TimeOfDay
OOP 7 - Private Data - TimeOfDay
OOP 8 - Visibility
OOP 9 - toString() - TimeOfDay
Commentary: Always write super()?

OOP: Inheritance

OOP 1 - Introduction to Inheritance
OOP 2 - Data - Student Class
OOP 3 - Constructor - Student Class
OOP 4 - Data+Constructor - TimeOfDay
OOP 5 - Overloading Constructors - TimeOfDay
OOP 6 - Validity Checking - TimeOfDay
OOP 7 - Private Data - TimeOfDay
OOP 8 - Visibility
OOP 9 - toString() - TimeOfDay
Commentary: Always write super()?

User Interface: GUI - Six steps to a simple GUI

GUI 1 - Introduction
GUI 2 - Tiny Window
GUI 3 - Tiny Window with subclass.
GUI 4 - Tiny Window with a JLabel.
GUI 5 - Dog Years - GUI only
GUI 6 - DogYears - Listeners, Complete Program
General issues
Commentary: Why learn GUI programming?
Commentary: Deployment: Applications, Applets, WebStart, Web server?
Commentary: By hand vs GUI editors
Commentary: Swing vs AWT vs SWT vs ...
Commentary: Why aren't Java GUIs easier?
Technical issues
Commentary: Subclass JFrame, JPanel, or no subclass?
Commentary: main - Building window in main()
Commentary: main - Which class to put it in
Commentary: main - Responsibilities of and JFrame subclass constructor
Commentary: Window close operation
Commentary: ContentPane (or Content Pain?)
Commentary: Listener alternatives
Commentary: Anonymous inner-class listeners
Commentary: Where to create components
Commentary: main - Starting GUI thread