Appendix A. Java Then and Now

Introduction: Always in Motion the Java Is

Java has always been a moving target for developers and writers. I meet developers in my commercial training programs who are still not aware of some of the features added to ancient Java releases, let alone current ones. This appendix looks at each of the major releases of Java. See Jon Byous’s Sun Microsystems article “Java Technology: The Early Years” for a review of Java’s early history. You can also find a copy at the Paderborn University website.1

Details on releases prior to Java 8 are considered ancient history and have been moved to my website, https://darwinsys.com/java/ancientHistory.html.

What Was New in Java 8

Java 8 Language Changes

The biggest new feature in the Java 8 language is lambda expressions. After a decade of debate on how to implement them, closures, or lambda expressions, finally arrived with Java 8. This is such a vast topic that it gets an entire chapter in this edition; see Chapter 9.

Annotations can now be placed on structured types.

Default methods in interfaces are now supported, allowing for the addition of functionality without breaking all implementations of the interface.

Java 8 API Changes

Java 8 brings in the new date/time API from JSR-310. This provides a more consistent and sensible set of classes and routines for dealing with time. Chapter 6 has been completely rewritten to use the new API, ending with a recipe showing various conversions between the old and ...

Get Java Cookbook, 4th Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.