Java programming fundamentals : problem solving through object oriented analysis and design - Nair, Premchand S. , 1956- (CRC Press, 2009)