Java, Java, Java : object-Oriented problem solving - Morelli, Ralph (Pearson Prentice Hall, 2006)