Index
- java10 (GA 2018/03/20)
- java11 (GA 2018/09/25)
- java12 (GA 2019/03/19)
- java13 (GA 2019/09/17)
- java14 (GA 2020/03/17)
JEP 189: Shenandoah: A Low-Pause-Time Garbage Collector (Experimental)
실행중인 Java 스레드와 동시에 비우기 작업을 수행하여 GC 일시 중지 시간을 줄이는 Shenandoah라는 새로운 GC (가비지 수집) 알고리즘이 추가됨. Shenandoah의 일시 중지 시간은 힙 크기와 무관(힙이 200MB이든 200GB이든 일관된 일시 중지 시간이 동일함).
JEP 230: Microbenchmark Suite
JDK 소스 코드에 기본 마이크로 벤치 마크 제품군을 추가하면 개발자가 기존 마이크로 벤치 마크를 쉽게 실행하고 새 마이크로 벤치 마크를 쉽게 만들 수 있다.
JEP 325: Switch Expressions (Preview)
switch문 또는 식으로 사용할 수 있도록 문을 확장하고 두 양식 모두 “전통적인”또는 “단순화 된”범위 지정 및 제어 흐름 동작을 사용할 수 있다. Preview 이므로 --enable-preview
옵션을 줘야 사용할 수 있는 기능이다.
참고 :이 JEP는 JDK 13을 대상으로 하는 JEP 354 로 대체 된다.
현재 Java switch명령문 의 디자인은 C 및 C ++와 같은 언어를 밀접하게 따르고 있다.
예를 들어, 다음 코드에서 많은 break문은 불필요하게 장황하게 만든다.
1 | switch (day) { |
아래와 같이 개선할 수 있다.
1 | switch (day) { |
switch 문은 Statement에서 Expression 으로 바뀐다. 아래와 같이 Return 값을 받을 수 있다.
1 | int numLetters = switch (day) { |
아직 Preview단계이나 상당히 기대되는 변화 중 하나다.
JEP 340: One AArch64 Port, Not Two
ARM 포트가 1개가 된다. 32bit와, 64bit 를 유지하면서 arm64 port와 관련된 모든 소스를 제거한다.
그렇게 되면 하나의 64bit ARM 구현을 하고 2개 포트를 유지 관리하는 데 따르는 중복 작업을 없앨 수 있다.