Before you begin
Find out what to expect from this tutorial and how to get the most out of it.
The two-part "Introduction to Java programming" tutorial is intended to get software developers new to Java technology up and running with object-oriented programming (OOP) and real-world application development using the Java language and platform.
This second half of the "Introduction to Java programming" tutorial introduces capabilities of the Java language that are more sophisticated than those covered in Part 1.
The Java language is mature and sophisticated enough to help you accomplish nearly any programming task. In this tutorial, you'll be introduced to features of the Java language that you will need to handle complex programming scenarios, including:
- Exception handling
- Inheritance and abstraction
- Interfaces
- Nested classes
- Regular expressions
- Generics
enumtypes- I/O
- Serialization
The content of this tutorial is geared toward programmers new to the Java language who are unfamiliar with its more-sophisticated features. The tutorial assumes that you have worked through "Introduction to Java programming, Part 1: Java language basics" in order to:
- Gain an understanding of the basics of OOP on the Java platform.
- Set up the development environment for the tutorial examples.
- Begin the programming project that you will continue developing in Part 2.
The exercises in this tutorial require a development environment consisting of:
- JDK 6 from Sun/Oracle
- Eclipse IDE for Java Developers
Download and installation instructions for both are included in Part 1.
The recommended system configuration for this tutorial is:
- A system supporting JDK 6 with at least 1GB of main memory. Java 6 is supported on Linux®, Windows®, and Solaris®.
- At least 20MB of disk space to install the software components and examples covered.


