학교 선배들과 이야기를 나누다가 Java 17에 대한 이야기가 나왔다. 아니 현업에서는 아직 Java 8이나 11을 많이 쓰는 거 아니었나? 벌써 17? 이라고 생각했는데, 조금 검색하다 보니 알아볼 가치가 있다는 생각이 들었다.
봉인 클래스
Java 15부터 프리뷰 형식으로 제공되다가 17에서 정식 기능으로 추가되었다.
1
2
3
4
5
6
7
8
9
package com.example.species;
public sealed class Animal
Dog,
com.example.species.india.Monkey,
com.example.species.sabana.Leopard
{
// ...
}
sealed
예약어를 통해 봉인 클래스로 만들고 상속받을 수 있는 클래스를 지정하는데 이때 상속받을 클래스는 봉인 클래스와 같은 패키지 내에 존재해야 하고 봉인 상태에 대해 sealed
, non-sealed
또는 final
을 명시해 주어야 한다.
새로운 LTS 버전
Java 17은 8, 11을 이어 출시되는 3번째 LTS(Long Term Support, 장기 지원) 버전으로 앞으로의 Java 생태계를 오랫동안 책임질 버전이라고 할 수 있다.
애플릿의 완전 제거
Java 9에서부터 업데이트가 중단되었던 애플릿 API가 완전히 삭제된다. 애플릿은 웹에서 애플리케이션을 돌리기 위한 용도로 과거에는 ActiveX와 함께 많이 사용되었으나 보안 등의 문제로 주요 브라우저에서도 지원이 이미 중단된 상태이다.
macOS 지원 관련
Apple Silicon 칩을 정식 지원하고 그래픽 렌더링이 Metal 기반으로 교체되면서 새로 나오는 Apple Silicon 기반 맥에서 큰 성능 향상을 기대할 수 있다.
향상된 의사난수 생성기 추가
더욱 예측하기 어려운 난수를 생성할 수 있다.
Comments powered by Disqus.