Programming with Java:a primer - Balaguruswamy, E (Tata McGraw-Hill, 2010)