JDK 15

2020-09-15 Consolidated JDK 15 Release Notes

JDK 14

2020-03-17 Release Notes for JDK 14 and JDK 14 Update Releases

JDK 13

2019-09-17 General Availability

Release Notes for JDK 13 and JDK 13 Update Releases

JDK 12

2019-03-19 Release Notes for JDK 12 and JDK 12 Update Releases

OpenJDK 12

  • 언어적/기능적 변경 크지 않음.
  • 스위치 표현 개선을 위한 초안 발표.
    • [[java-switch-expression]]{Switch Expressions (Preview)}

그 외

Shenandoah GC

JDK 11

2018-09-25 Consolidated JDK 11 Release Notes

OpenJDK 11

  • 발표 주기 변경 후 최초의 LTS 버전
  • HTTP 클라이언트 API를 정식으로 추가
  • 컬렉션 인터페이스에 toArray 메소드 추가
  • var 키워드 지원 확대 - 람다 표현식에서도 var 사용 가능
  • String 클래스 기능 추가
    • isBlank, lines, strip, stripLeading, stripTrailing

JDK 10

2018-03-20 JDK 10 Release Notes

OpenJDK 10

JDK 9

2017-09-21 What's New in Oracle JDK 9

OpenJDK 9

  • 라이선스 체계
  • 발표 주기 변경(6개월 주기 업그레이드)
  • 모듈화(Project Jigsaw)
  • JShell(REPL)
  • 통합 JVM 로깅
    • 자바를 실행할 때 -Xlog 파라미터 옵션을 적용하면 된다.
  • HTML5 JavaDoc
    • javadoc 명령에 -html5 옵션을 적용하면 HTML5로 JavaDoc이 빌드된다.
  • try-with-resource 개선
  • private 메소드도 interface 내에 생성할 수 있게 됨.
  • 다이아몬드 연산자 <> 개선 - 익명 클래스에서도 <>를 쓸 수 있게 됐다.
  • 프로세스 API - 프로세스 정보에 접근할 수 있는 새로운 API.
    • 모든 프로세스, 현재 프로세스, 자식 프로세스, 종료 프로세스 등의 정보를 조회하고 관리할 수 있게 됐다.
  • CompletableFuture 개선 - 타임아웃과 지연 기능 추가
  • Reactive stream API

JDK 8

2014-03-18 What's New in JDK 8

  • 언어적 변경
  • Collections
    • java.util.stream 패키지 추가.
      • stream의 원소들에 함수형 스타일의 작업을 지원.
      • stream API는 Collections API에 통합.
    • [[java8-performance-improvement-for-hashmap]]{HashMap 퍼포먼스 향상}
  • Date-Time Package
  • Optional
  • CompletableFuture - Future 인터페이스에서 제공하는 기능을 개선
  • IO, NIO
    • java.lang.String(byte[], *) 생성자 퍼포먼스 향상.
    • java.lang.String.getBytes() 메소드 퍼포먼스 향상.
  • java.lang, java.util 패키지
    • Parallel Array Sorting
  • HotSpot
    • [[java8-why-permgen-removed]]{Removal of PermGen}

JDK 7

2011-07-28

Java SE 7 Update Release Notes

  • File NIO 2.0
    • 파일 처리를 위한 새로운 기능.
    • java.io.File 클래스와 개념이 다름.
  • 포크/조인 프레임워크
    • 자바 5에서 처음 등장한 컨터런트 API에 포크/조인 기능이 추가되었다.
  • 다이아몬드 연산자 <>
    • 제네릭 선언 방법 개선
  • try-with-resource
  • 하나의 catch 내에 여러 개의 Exception을 처리할 수 있도록 개선
  • JVM 기반 스크립트 언어 지원

JDK 6

2004-09-30 릴리즈

Highlights of Technology Changes in Java SE 6

  • JDK 5 안정화 기능 보강 버전
  • G1GC - 6 버전의 중간부터 추가된 기능. 자바 7 부터 기본 GC가 되었다.

JDK 5

New Features and Enhancements J2SE 5.0

JDK 1.4

2002-02-06 릴리즈

  • 성능 향상
  • 정규식 등 기능 포함

JDK 1.3

2000-05-08 릴리즈

  • 성능 향상
    • Java HotSpot 포함
  • JNDI (Java Naming and Directory Interface) 추가
  • 그 외 여러가지

JDK 1.2 (Java 2 SE)

1998-12-08 릴리즈

  • Java™ 2 Brand Unveiled
    • 버전 정책 변경: Java 2 SE(Standard Edition) 용어 사용
  • 새로운 통합 아키텍처 Collection Framework
  • 퍼포먼스 향상
    • 로드된 클래스에 대한 메모리 압축
    • 더 빠른 메모리 할당 및 개선된 GC
    • 곧 출시될 Java HotSpot VM을 포함하여 다른 VM을 위한 플러그형 VM 아키텍처
    • 새로운 JIT(Just In Time) 컴파일러
    • JNI(Java Native Interface) 변환
  • 향상된 JDBC 2.0
  • 그 외 여러가지

JDK 1.1

1997-02-19 릴리즈

  • 컴파일러 개선
  • 개선된 AWT(GUI)
  • 내부 클래스
  • JavaBeans
  • DB 연결을 위한 JDBC
  • Unicode 2.0 표준을 기반으로 한 글로벌 언어 지원

JDK 1.0

1996-01-23 릴리즈

참고문헌

주석