Versions of Java
This book will focus on Java 8, because this is the latest release of the language, and contains many significant additions. Throughout the book I will specifically point out features that relate to Java 8 (and even Java 7 to some degree), because it is important for you to know that these are recent additions to the language. There are massive amounts of Java code already written in earlier versions of the language, and it may be your job to work with these at some stage, therefore you need to know the limitations of earlier versions of the language.
Although versions of Java are technically backwards compatible, it can take significant effort to upgrade a large Java program to a newer version of Java, therefore a lot of programs continue using older versions of the language.