Java, Java, Java Object-oriented problem solving - Morelli, Ralph (Prentice-Hall, 2003)