SIMPOLOR
단순하고 색있게
Java 12 주요 특징 및 개선 사항: Switch Expressions, Shenandoah GC 등
단순색
·
2024년 06월 08일
Java
자바 12(Java SE 12)는 2019년 3월에 릴리스되었습니다. 자바 12는 짧은 릴리스 주기 내에 여러 가지 새로운 기능과 개선 사항을 도입했습니다. ## Switch Expressions (Preview) `switch` 문을 표현식으로 사용할 수 있는 기능이 프리뷰로 도입되었습니다. 이를 통해 `switch` 문을 더 간결하게 작성할 수 있습니다. ``` int numLetters = switch (day) { case MONDAY, FRIDAY, SUNDAY -> 6; case TUESDAY -> 7; case THURSDAY, SATURDAY -> 8; case WEDNESDAY -> 9; }; ``` ## Shenandoah: A Low-Pause-Time Garbage Collector (Experimental) - Shenandoah 가비지 컬렉터가 도입되었습니다. 이는 짧은 일시 정지를 목표로 하는 가비지 컬렉터입니다. ``` > java -XX:+UseShenandoahGC MyApp ``` ## Microbenchmark Suite JDK에 마이크로벤치마크 모음이 포함되었습니다. 이는 JVM과 JDK의 성능을 벤치마킹할 수 있도록 지원합니다. ## JVM Constants API 새로운 `jdk.constants` 패키지를 도입하여, 클래스 파일의 상수를 다루기 위한 API를 제공합니다. ``` import jdk.internal.org.objectweb.asm.*; public class GenerateClass { public static void main(String[] args) { // Using ASM library to generate a class file } } ``` ## G1 Garbage Collector Enhancements - G1 가비지 컬렉터에 여러 가지 개선 사항이 추가되었습니다. - 사용하지 않는 메모리를 운영체제에 즉시 반환할 수 있는 기능과 혼합 수집을 중단할 수 있는 기능이 포함됩니다. ``` > java -XX:+UseG1GC -Xmx4g MyApp ``` ## Default CDS Archives 클래스 데이터 공유(CDS)가 기본으로 활성화되었습니다. 이는 애플리케이션 시작 시간을 단축시킵니다.
연관 포스트
Java 6 주요 특징 및 개선 사항: 성능 향상, 웹 서비스, 스크립팅 언어 지원 등
Java 7 주요 특징 및 개선 사항: 언어 개선, 새로운 IO API, 병렬 프로그래밍 등
Java 8 주요 특징 및 개선 사항: Lambda Expressions, Stream API, 날짜와 시간 API 등
Java 9 주요 특징 및 개선 사항: 모듈 시스템, JShell, Stream API 등
Java 10 주요 특징 및 개선 사항: Local Variable Type Inference, G1 GC 개선 등
Java 11 주요 특징 및 개선 사항: String 메서드, HTTP 클라이언트, ZGC 등
Java 12 주요 특징 및 개선 사항: Switch Expressions, Shenandoah GC 등
Java 13 주요 특징 및 개선 사항: 텍스트 블록, Switch Expressions, ZGC 등
Java 14 주요 특징 및 개선 사항: Pattern Matching, Records, Switch Expressions 등
Java 15 주요 특징 및 개선 사항: 텍스트 블록, Sealed Classes, ZGC 등
Java 16 주요 특징 및 개선 사항: Records, Pattern Matching, Sealed Classes 등
Java 17 주요 특징 및 개선 사항: Sealed Classes, Records, Pattern Matching 등
Java 18 주요 특징 및 개선 사항: Simple Web Server, UTF-8 기본 인코딩 등
Java 19 주요 특징 및 개선 사항: Pattern Matching, Virtual Threads, Foreign Function & Memory API 등
Java 20 주요 특징 및 개선 사항: Pattern Matching, Virtual Threads, Scoped Values 등
Java 21 주요 특징 및 개선 사항: Pattern Matching, Virtual Threads, Structured Concurrency 등