Java 10 is Released – a Look at the Latest Version


Java SE 10 hit the software development scene earlier this week: news that piqued the interest of many application engineers across the world. The venerable programming language is now in its third decade, but still sees wide use throughout the business community. It remains a leading choice for projects still leveraging the object-oriented design model.

Let’s take a closer look at version 10 of Java. Are the new features and functionality something your development team needs to help write better code? The truth lies in the details.

Java 10 is the First of Oracle’s New Release Cycle

Version 10 of Java is the first to be part of Oracle’s new six-month release cycle. Needless to say, expect at least two updates every year in March and September, which is something Java development teams need to consider as part of their own process. Hopefully, the enhanced language features outweigh any compatibility issues due to a new version.

If you are interested in downloading Java 10, simply click on the following link. News about the fresh version of Java appeared in JAXenter as well as other sources. George Saab, vice president of software development of the Java Platform Group at Oracle, commented on their new release schedule to SD Times:

“With JDK 10, we’ll deliver the first major release that was fully developed under the new model. I believe that the breadth of features, their high quality and the smaller scope overall of major releases under the new release model all make it easier for developers to find something exciting in each release, migrate and benefit from the faster cadence. As such, I think that this was a very positive change for the platform overall — it has been reinvigorating in many ways!”

What New Features are included with Java 10?

Arguably the biggest new Java 10 language feature for software engineers is the support for local variable type inference. This is something long held by other programming languages, including JavaScript. The compiler is able to infer the type, which leads to more concise code.

For example, a simple statement like var x = new ArrayList(); just isn’t possible in previous versions of Java. Less time spent typing is something any programmer needs in their professional life!

A variety of performance improvements make up the other major features of JDK 10. For instance, the G1 garbage collector is now able to be run in a fully parallel fashion. Application Class-Data sharing improves the start-up time of the JVM; Java 10 now lets you include the built-in system class loader, the built-in platform class loader, and custom class loaders in this shared archive.
Time-based release versioning allows dev teams to accurately stamp their software releases; this is especially valuable for emergency builds. Linux shops are now able to use the experimental Java-based JIT compiler, Graal to build applications. Thread-local handshakes let you kill individual threads without the extra overhead of invoking a global VM safepoint.

These highlights merely scratch the surface of what’s in the new Java SE 10. Improved performance and the ability to finally use “var” variable declarations appear to be the keys. Stay tuned for the next Java release in September.

As always, thanks for reading the Betica Blog. Keep coming back for additional news from the software development world.