Objects first with Java - Barnes, David J.,Kölling, Michael (Pearson, 2012)