Horstmann:

Java Concepts for Java 5 and 6, 5th Edition

Chapter 16

Student Companion Site