2024. 10. 15. 03:16ㆍ유용한 정보
Java 버전별 주요 특징
Java는 1996년 첫 출시 이후 꾸준히 발전해왔으며, 각 버전마다 중요한 기능이 추가되고 성능이 개선되었습니다. 이 글에서는 Java의 주요 버전과 그 특징을 정리해 보겠습니다.
1. Java 8 (2014년)
Java 8은 Java 생태계에서 매우 중요한 버전으로, 람다 표현식과 스트림 API를 도입하여 함수형 프로그래밍을 지원하게 되었습니다. 또한, 인터페이스에 디폴트 메소드를 추가하고, java.time 패키지를 통해 새로운 날짜와 시간 API를 제공하여 복잡한 날짜 처리를 단순화했습니다.
- 주요 기능:
- 람다 표현식 도입
- 스트림 API
- 새로운 날짜/시간 API
- Optional 클래스 도입
2. Java 9 (2017년)
Java 9은 모듈 시스템(Project Jigsaw)을 도입하여 대규모 애플리케이션에서 코드 관리를 개선했습니다. 또한, JShell이라는 REPL(Read-Eval-Print Loop) 도구가 추가되어 빠르게 코드를 실행해 볼 수 있게 되었습니다.
- 주요 기능:
- 모듈 시스템 도입
- JShell 추가
- 불변 컬렉션 생성 메소드
- try-with-resources 개선
3. Java 10 (2018년)
Java 10은 Java의 짧은 릴리스 주기를 도입한 첫 번째 버전으로, 지역 변수에 대해 var 키워드를 사용할 수 있게 했습니다. 이를 통해 코드의 가독성을 높이고, 타입 추론을 개선했습니다.
- 주요 기능:
- 지역 변수 타입 추론(var)
- G1 가비지 컬렉터 개선
4. Java 11 (2018년, LTS)
Java 11은 장기 지원(LTS) 버전으로, HTTP 클라이언트 API가 표준화되었습니다. 또한, 많은 불필요한 API들이 제거되어 보다 가벼운 런타임을 제공하며, 람다 표현식에 var를 사용할 수 있게 되었습니다.
- 주요 기능:
- HTTP 클라이언트 API
- 람다 파라미터에 var 사용
- 파일 읽기/쓰기 간소화
5. Java 12 (2019년)
Java 12는 switch 표현식을 도입하여 기존 switch 문보다 더 간결하고 유연한 코드를 작성할 수 있게 했습니다.
- 주요 기능:
- switch 표현식 프리뷰
- G1 가비지 컬렉터 성능 향상
6. Java 13 (2019년)
Java 13에서는 텍스트 블록이라는 기능이 프리뷰로 도입되었습니다. 이 기능은 여러 줄의 문자열을 작성할 때 편리한 방법을 제공합니다.
- 주요 기능:
- 텍스트 블록 프리뷰
- G1 가비지 컬렉터 개선
7. Java 14 (2020년)
Java 14는 레코드 클래스라는 새로운 클래스 유형을 프리뷰로 도입하여 불변 데이터 객체를 간단하게 정의할 수 있게 했습니다. 또한, 패턴 매칭을 지원하는 새로운 기능이 추가되었습니다.
- 주요 기능:
- 레코드 클래스 프리뷰
- 패턴 매칭 for instanceof
8. Java 15 (2020년)
Java 15는 봉인 클래스(Sealed Classes)를 프리뷰로 도입하여 클래스 상속 구조를 더 안전하게 관리할 수 있게 했습니다. 이 기능은 개발자가 상속을 보다 엄격하게 제어할 수 있게 해줍니다.
- 주요 기능:
- 봉인 클래스 프리뷰
- 텍스트 블록 정식 도입
9. Java 16 (2021년)
Java 16은 레코드 클래스와 패턴 매칭 for instanceof 기능이 정식으로 도입되었습니다. 이를 통해 더 간결하고 명확한 코드를 작성할 수 있습니다.
- 주요 기능:
- 레코드 클래스 정식 도입
- 패턴 매칭 for instanceof 정식 도입
10. Java 17 (2021년, LTS)
Java 17은 장기 지원(LTS) 버전으로, 봉인 클래스와 패턴 매칭 for switch가 정식으로 도입되었습니다. 이는 대규모 애플리케이션 개발에 필요한 안정성과 성능을 보장하는 중요한 릴리스입니다.
- 주요 기능:
- 봉인 클래스 정식 도입
- 패턴 매칭 for switch 프리뷰
- 텍스트 블록 및 레코드 클래스 정식 지원
11. Java 21 (2023년, LTS)
Java 21은 최신 장기 지원(LTS) 버전으로, 가상 스레드와 레코드 패턴 등의 기능을 정식 도입하였습니다. 이를 통해 동시성 처리가 더욱 간소화되었고, 자바의 확장성도 강화되었습니다.
- 주요 기능:
- 가상 스레드
- 레코드 패턴
- 패턴 매칭 for switch 정식 도입
'유용한 정보' 카테고리의 다른 글
2024년 10월 기준 최신 Java 버전 (0) | 2024.10.16 |
---|---|
Java 20의 주요 기능 (1) | 2024.10.16 |
이클립스 4.33 (2024-09) 버전에서 지원하는 Java 23 (0) | 2024.10.15 |
이클립스 2023-06 버전에서 추가된 새로운 기능 (0) | 2024.10.15 |
이클립스 2024-12 버전의 예상 기능 (2) | 2024.10.15 |