Java programming - Farrell, Joyce (Cengage Learning, 2016)