Java programming : from problem analysis to program design - Malik, D. S. (Course Technology Cengage Learning, 2010)