|
Introduction • Programming in typed languages • Typed vs untyped variables • Type errors • Type theory • Common types • Introduction to the JDK/SDK • Using JCreator
Introduction to Object Orientation • Benefits of Object Orientation • What is an object? • Defining classes and instances • What are Fields and Methods? • The use of class members vs instance members • Messages and invoking methods
The Java language • Garbage collection • Comparison of objects • Primitive data types: what they are and how they work • Compilation and execution of Java code • Use of packages • Java sourcefile structure • Defining classes and interfaces • Defining Methods and Fields • JavaDoc and writing code comments • Looping and conditional constructs • Creating instances • Java expressions • Accessing members • Creating and using arrays
Modes of execution • Types of Java application (application, applet, servlet etc) • Applets as applications • Java security model • JDK tools |
Object Orientation II • Constructors and static initialisers • Finalisers • Inheritance • Casting • Abstract classes • Interfaces • Modifiers in Java
Building user interfaces in Swing • The Abstract Windowing Toolkit • Swing overview • Components and containers • Building a user interface • Layout managers • Designing complex user interfaces
Events and exceptions • Events • Listener interfaces • Event propagation • Exceptions • Using try/catch/finally block
Input and output • Input and output streams • Stream concatenation • Common stream types • Text streams • Object streams and serialisation
Threads • Threads in Java • The Thread class • Creating new threads • Stopping and controlling threads • Synchronisation issues
Questions and answers |