Java Essentials

(RAT220 – 4 days)

 

Java Programming for Programmers

For the developer, the Java language is the centrepiece of Sun's Java platform. It is built on a platform independent runtime and forms the foundation for common libraries and middleware. The Java Essentials course is an introduction to the language for experienced programmers who wish to acquire Java language skills. It develops the concepts and syntax through lectures,

discussion and hands-on lab exercises.

 

Featureses

 

Audience

The course is suitable for programmers who have experience of a modern programming language and at least some familiarity with object-orientation.

Additional Details

Agenda:

 

The Java Platform

  • The JVM and bytecode
  • Deployment
  • The JDK and J2SE
  • J2SE 5.0 versus earlier versions
  • Applications, applets, servlets and others ·

 

Designing with Java in mind

A Tour of Java Statements, blocks and scope

  • Comments
  • Classes, methods and fields
  • The main method
  • Packages
  • Basic I/O
  • Writing and running a program

 

The Type System

  • Built-in types
  • Type conversions
  • Declarations and initialization
  • Object types, references and instantiation
  • The null reference · String · Arrays
  • Metadata

 

Control Flow

  • if else and switch selection
  • while and do loops
  • Traditional and enhanced for loops
  • Exception handling
  • Exception safety

 

Classes and Objects

  • Methods and overloading
  • public, private and package visibility
  • The this reference

 

Initialisation and Finalisation

  • Field initialisation
  • Initialiser blocks
  • Constructors
  • final and static final fields
  • The garbage collector
  • finalize and its pitfalls

 

Interfaces
  • Interfaces and polymorphism
  • Implementing interfaces
  • Designing with interfaces
  • Multiple interfaces
  • Interface extension
  • Casting, instanceof and guidelines on their use

 

 

Extending Classes

  • Single inheritance of implementation
  • Abstract classes
  • protected visibility
  • Accessing and initialising the superclass
  • final methods and classes

 

Exception Objects

  • Checked exceptions, unchecked exceptions and errors
  • finally gotchas

 

Strings

  • Manipulating and comparing strings
  • String conversions to and from other built-in types
  • The toString method
  • String performance pitfalls
  • StringBuffer and StringBuilder

 

Collections

  • The collections API
  • Overview of generics in Java
  • Iterators
  • Using built-in wrappers to store primitive values
  • Autoboxing and unboxing
  • Collection wrappers and utilities

 

Class Scope

  • static methods and fields
  • static top-level classes
  • Named and anonymous inner
  • classes
  • Member and local inner classes
  • static import
  • enum types

 

Library Overview

  • File handling
  • Threading and synchronization
  • Reflection
  • Applets
  • The AWT and Swing
  • Events and listeners
  • JDBC
  • Network programming
  • RMI
  • JNI
  • J2EE