java2018년 9월 9일2 min read

List of New Features and Improvements - Changes in Java 11

A list of new features and improvements introduced in Java 11.

FFrank Advenoh
#java#java11#upgrade

Java 11

  • JEP 181: Nest-Based Access Control
  • JEP 309: Dynamic Class-File Constants
  • JEP 315: Improve Aarch64 Intrinsics
  • JEP 318: Epsilon: A No-Op Garbage Collector
  • JEP 320: Remove the Java EE and CORBA Modules
  • JEP 321: HTTP Client (Standard)
  • JEP 323: Local-Variable Syntax for Lambda Parameters
  • JEP 324: Key Agreement with Curve25519 and Curve448
  • JEP 327: Unicode 10
  • JEP 328: Flight Recorder
  • JEP 329: ChaCha20 and Poly1305 Cryptographic Algorithms
  • JEP 330: Launch Single-File Source-Code Programs
  • JEP 331: Low-Overhead Heap Profiling
  • JEP 332: Transport Layer Security (TLS) 1.3
  • JEP 333: ZGC: A Scalable Low-Latency Garbage Collector (Experimental)
  • JEP 335: Deprecate the Nashorn JavaScript Engine
  • JEP 336: Deprecate the Pack200 Tools and API

For the various features and improvements added in Java 11, please refer to the following link.

JEP 321: HTTP Client (Standard)

The HTTP client incubated in Java 9 & 10 was released as a standardized version in Java 11. Package: java.net.http

For more details on HTTP2, please refer to HTTP/2 - the one only I didn't know about.

JEP 323: Local-Variable Syntax for Lambda Parameters

var was introduced in JDK 10, but it could not be used in implicitly typed lambda expressions. From Java 11, the var keyword can also be used in lambda expressions.

@Test
public void test_JEP323() {
    var xs = new in[]{3, 2, 6, 4, 8, 9};
    int x = Arrays
            .stream(xs)
            .filter((var a) -> a < 5)
            .sum();
    System.out.println(x);
}

References

관련 글