Repository with new features of Java 9, 10, 11, 12 & 13.
- new HttpClient & HttpRequest
- Process API improvements
- Killing Processes
- Private interface methods
- Collection factory methods
- optional class improvements
- .stream()
- .ifPresentOrElse()
- .or()
- anonymous diamond operators
- stream API improvements see here
- takeWhile()
- dropWhile()
- iterate()
- ofNullable()
- completable future API improvements
- delays & timeouts
- subclassing
- new factory methods
- improved javadoc
- improved @Deprecated
- Modules
- REPL
- Multi release JAR's
- Garbage collector
- try with resources improvement
- Local variable type inference
- var (compiler infers the type of message from the type of the initializer present on the right-hand side)
- var is not a keyword
- no runtime overhead
- Unmodifiable collections
- List.copyOf()
- Set.copyOf()
- Stream.toUnmodifiable()
- optional class improvements
- .orElseThrow()
- performance improvements
- container awareness
-XX:-UseContainerSupport
disables container awareness-XX:ActiveProcessorCount=count
specifies the number of CPU's the JVM will use- system memory control
-XX:InitialRAMPercentage
-XX:MaxRAMPercentage
-XX:MinRAMPercentage
- Time-based Release Versioning
- 1 release each 6 months
- feature release support will only last 6 months
- LTS release will be supported for 3 years
- Graal
-XX:+UnlockExperimentalVMOptions -XX:+UseJVMCICompiler
Features:
- launching single-file source-code programs
- local variable lambda parameters
- String API additions
- Nest based access control ???
- Http client updates
- Epsilon GC
- jlink
- Predicate.not()
Sources:
Features:
- String API additions
- Switch preview
- Number formatting
- Collectors.teeing()
- Text Block Preview
- Switch preview