Java 10 was released on 2018-03-20. It is not an LTS release and will be obsoleted at the release of Java 11 in September 2018.
Schedule:
2017/12/14 | Rampdown Phase One | |
2018/01/11 | All Tests Run | |
2018/01/18 | Rampdown Phase Two | |
2018/02/08 | Initial Release Candidate | |
2018/02/22 | Final Release Candidate | |
2018/03/20 | General Availability |
Changes from Java 9:
- JEP 286: Syntax: added local-variable type inference (
var
).- Style guidelines from Project Amber
- FAQ from Project Amber
Optional.get
deprecated in favour ofOptional.orElseThrow
- JEP 319: Provide a default set of root Certification Authority (CA) certificates in the JDK. (part of the OpenJDK convergence exercise).
- Version number system changed again.
- JDK-8177290: APIs for creating unmodifiable collections (probably replaces some stuff from Guava).
- JDK-8186535: removed some stuff from
SecurityManager
- JDK-8148371: removed
policytool
- JDK-8159544: removed things from
com.sun.security.auth
- Improved Docker Container Integration probably means that at least some people will want to use Java 10 as an execution environment for the IdP.
- Copy factories for collections, optimising for already-unmodifiable structures. Makes the various "unmodifiable" collection wrappers mostly obsolete.
- Stream collectors for collections.