Arnold, Ken, Gosling, James, and Holmes, David (2005) The Java programming language. 4th ed. Upper Saddle River, N.J.: Addison-Wesley.
Barnes, D.J. and Kölling, M. (2017) Objects first with Java: a practical introduction using BlueJ. Sixth edition, global edition. Harlow, Essex, England: Pearson. Available at: https://librarysearch.kent.ac.uk/client/en_GB/kent/search/detailnonmodal/ent:$002f$002fSD_ILS$002f0$002fSD_ILS:1569545/ada.
Bloch, J. (2017) Effective Java. Third edition. Harlow: Addison-Wesley.
Bloch, Joshua and Gafter, Neal (2005) Java puzzlers: traps, pitfalls, and corner cases. Boston, Mass: Addison-Wesley.
Deitel, P.J. et al. (2015) Java how to program: Late objects version. Tenth edition. Harlow, Essex, England: Pearson Education Limited.
Eckel, B. (2006) Thinking in Java. 4th ed. Upper Saddle River, N.J.: Prentice Hall.
Evans, B.J. and Flanagan, D. (no date) Java in a nutshell. Seventh edition. Beijing: O’Reilly. Available at: https://librarysearch.kent.ac.uk/client/en_GB/kent/search/detailnonmodal/ent:$002f$002fSD_ILS$002f0$002fSD_ILS:1573544/ada.
Liang, Y.D. (2019) Introduction to Java programming and data structures: Comprehensive version. Eleventh edition. NY, NY: Pearson. Available at: https://librarysearch.kent.ac.uk/client/en_GB/kent/search/detailnonmodal/ent:$002f$002fSD_ILS$002f0$002fSD_ILS:1573542/ada.
Sierra, K. and Bates, B. (2005) Head first Java. Second edition. Sebastopol, California: O’Reilly. Available at: https://librarysearch.kent.ac.uk/client/en_GB/kent/search/detailnonmodal/ent:$002f$002fSD_ILS$002f0$002fSD_ILS:1507064/ada?qu=head+first+java+sierra&if=el%09edsSelectFacet%09FT1&d=ent%3A%2F%2FSD_ILS%2F0%2FSD_ILS%3A1507064%7EILS%7E4&ir=Both&h=8.