Java programming from the ground up - Bravaco (McGraw-Hill, 2010)