This book requires that you have a good knowledge of Java. It will help to have available a good resource on Java, particularly The Java Programming Language , by Ken Arnold and James Gosling.
This book makes many references to design patterns. Although this book explains the basics of each pattern as it is introduced, it will help to have at hand Design Patterns , by Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides.
This book uses the Unified Modeling Language as a notation for describing object-oriented design. This book includes an appendix on this notation, but it will help to have available The Unified Modeling Language User Guide , by Grady Booch, James Rumbaugh, and Ivar Jacobsen.
These books and others are listed in the References section.