Java 2 by example - Friesen, Geoff (Que, 2000)