Java SE 24가 출시되었습니다. 새로운 기능, 개선 사항 등에 대해 알아보세요.

자바 플랫폼, 스탠다드 에디션

XNUMX 개월의 개발 끝에 Oracle이 Java SE 24 출시를 발표했습니다.오픈 소스 OpenJDK 프로젝트를 기반으로 하며, 이전에 개발된 대부분의 프로젝트가 수정 없이 계속 실행될 수 있도록 이전 버전과의 호환성을 유지합니다.

장기 지원(LTS) 릴리스와 달리 Java SE 24는 정기 지원 릴리스입니다. 즉, 다음 릴리스까지의 업데이트가 유지된다는 뜻입니다. 장기적 안정성을 추구하는 사람들을 위해 Java SE 21과 Java SE 17은 각각 2031년과 2029년까지 계속 지원됩니다. 또한, Java SE 8 LTS 확장 지원은 2030년까지 계속되고, Java SE 11은 2032년까지 유효합니다.

개선 사항 및 새로운 기능

Java SE 24의 이 새로운 버전에서는 다음 중 하나가 제공됩니다. 가장 중요한 개선 사항 의 소개입니다 Shenandoah 가비지 수집기를 위한 실험적 생성 모드 (새로운 객체와 오래된 객체를 별도로 처리하도록 설계됨). 이 새로운 모드는 수명이 짧은 객체를 청소할 때 효율성을 높이고, 메모리 사용을 최적화하며, 다양한 부하에서 보다 안정적인 성능을 제공합니다.

눈에 띄는 또 다른 참신함은 HotSpot JVM에서 컴팩트 객체 헤더에 대한 실험적 지원96비트 시스템에서는 크기가 64비트에서 64비트로 줄었습니다. 이러한 최적화는 힙 크기를 줄이고 메모리 캐시의 효율성을 개선하는 데 도움이 됩니다.

가비지 수집기 G1도 재설계를 통해 최적화되었습니다. 애플리케이션의 메모리 액세스를 모니터링하는 장벽입니다. 배리어 확장은 이제 C2 JIT 컴파일러 내에서 컴파일 프로세스의 후반부에서 수행되어 애플리케이션 유형에 따라 오버헤드가 최대 20%까지 줄어듭니다.

보안 및 암호화 개선

Java SE 24는 API를 도입합니다. 암호화 키의 파생(KDF), 추가 키 생성 허용 비밀 키와 임의의 데이터 집합으로부터. 아직 미리보기 단계인 이 API는 플랫폼 내 키 관리의 보안을 강화합니다.

또한, API 사용에 대한 경고가 추가되었습니다. Java 네이티브 인터페이스 및 외래 함수 및 메모리네이티브 코드에 대한 기본 액세스를 제한하는 무결성 모드의 향후 구현에 대비하여 준비했습니다. sun.misc.Unsafe 클래스를 통해 외부 메모리 액세스 방법을 사용하는 경우에도 경고가 활성화되었으므로 VarHandle API로 마이그레이션하는 것이 좋습니다.

반면, Java SE 24에서는 ML-KEM 암호화 알고리즘 지원 그리고 ML-DSA (설계된 것임 양자 컴퓨팅 공격에 대한 저항성). 이러한 알고리즘은 네트워크 이론 문제를 기반으로 하며, 기존 컴퓨터와 양자 컴퓨터에서 모두 해결 시간이 동일하도록 보장합니다.

브라우저 플러그인 지원이 중단된 이후 더 이상 사용되지 않던 Java Security Manager가 영구적으로 제거되었습니다.

최적화

JVM HotSpot은 이제 클래스를 미리 로드하고 연결할 수 있습니다.이로 인해 애플리케이션 시작 속도가 상당히 빨라집니다. 처음 실행할 때 클래스 상태가 캐시되어 나중에 시작할 때 로드가 용이해집니다.

또한, Scoped Values ​​구현이 개선되었습니다., 이제 p스레드 간에 변경 불가능한 데이터를 공유할 수 있습니다. 기존 스레드 로컬 변수 메커니즘을 대체하여 더 효율적으로 작동합니다. 이 기능은 수백만 개의 가상 스레드를 동시에 작업할 때 특히 유용합니다.

또 다른 참신함은 차단된 상태에서 가상 스레드 최적화. 이번 릴리스에서는 차단된 가상 스레드가 플랫폼 스레드를 해제하여 다른 스레드에서 재사용할 수 있게 함으로써 멀티스레딩 사용량이 많은 시스템에서 확장성이 향상되었습니다.

눈에 띄는 다른 변화:

  • Stream API에 새로운 확장 기능이 추가되어 사용자 정의 중간 작업을 정의할 수 있습니다.
  • 패턴 매칭 엔진은 switch 표현식과 instanceof 연산자에서 기본 유형(int, byte, char 등)을 지원하도록 향상되었습니다.
  • 구조화된 동시성 API의 네 번째 미리보기 버전이 추가되었습니다. 이 버전은 여러 스레드의 작업을 단일 실행 단위로 처리하여 멀티스레드 애플리케이션의 개발을 간소화합니다.
  • 클래스를 선언하고 main() 메서드를 정의하는 더 간단한 방법이 도입되어 정적 메서드가 있는 공개 클래스를 정의할 필요성이 없어졌습니다.
  • 클래스 파일 API가 추가되어 Java 클래스 파일을 보다 쉽고 프로그래밍 방식으로 구문 분석, 생성, 변환할 수 있습니다.

마지막으로, 그것에 대해 더 알고 싶으시면 자세한 내용을 참조하십시오. 다음 링크.

자바 SE 24 다운로드

Java SE 24의 새 버전 설치에 관심이 있는 경우 컴파일(JDK, JRE 및 Server JRE)이 이미 준비되어 있음을 알아야 합니다. 리눅스, 윈도우, 맥OS.