Java an introduction to problem solving & programming - Savitch, Walter J. (Pearson Prentice Hall, 2005)