Introduction to computing & programming in java : a multimedia approach - Guzdial, Mark (Pearson / Prentice Hall, 2007)