본문 바로가기

Server Oriented/Java & JSP

Java 버전 소개

https://namu.wiki/w/Java/버전

 

- 1994 jdk1.0a

 

- 1995 jdk1.0a2 (Java 대신 Oak 로 발표)

 

- 1996 jdk1.0.2 (Java 로 변경)

 

- 1997 jdk1.1

Inner Class, JavaBeans, RMI(Remote Method Invocation), Reflection, Unicode, Serializable

 

- 1998 j2se1.2 (~2003) Java 2 Standard Edition.

Swing GUI, JIT, Corba, Java Applet(17 에서 Deprecated), Collections, HotSpot JVM

 

- 2000 j2se1.3 (~2006)

HotSpot JVM, JNDI, JPDA, JavaSound

 

- 2002 j2se1.4 (~2008 일반지원, ~2013 연장지원)

assert, 정규표현식, IPv6, XML API, JCE, JSSE, JAAS, JavaWebStart

 

- 2004 j2se5 (~2009, ~2015) j2se1.5 라 하지 않고 j2se5 로 표기(내부적으로는 1.5).

Generics, Annotation, AutoBoxing/UnBoxing, Enumeration, 가변 길이 파라미터, Static Import, Concurrency API

 

- 2006 JavaSE6 (~2013.02, ~2018.02) J2SE 에서 Java SE 로 표기

Java Compiler API, Scripting Language Support, JDBC4.0, Pluggable Annotation

 

- 2011 JavaSE7 (~2015.04, ~2022.07)

Dynamic Language, switch 문에 String 사용, try-catch_resources, 리터럴(이진수, 숫자)에 _ 지원, <> 연산자, 새로운 FIle NIO

 

- 2014 JavaSE8 (~2019.01, ~2023.09)

32 bit 지원하는 마지막 공식 Java 버전

Lambda Expression, 새로운 날짜와 시간 API, Interface Default Method, Perm Gen 영역 삭제, Stream API

 

- 2017 JavaSE9 (~2018.03)

64 bit 만 지원. 유료화 이슈로 개발 현장에서 반기지 않는 버전.

JShell, HTTP/2, HTML5 Javadoc, UTF-8. Java Applet 종료, 선행 컴파일러(AOT Compilation)

내부적으로도 1.9 표기 방식 없어짐.

 

- 2018 JavaSE10 (~2018.09)

병렬 처리 가비지 컬렉션, 개별 쓰레드로 분리된 Stop-The-World, 이전 버전의 Deprecated API 완전 삭제, JVM 힙 영역을 시스템 메모리가 아닌 메모리에 할당 가능, CA(루트 인증 기관) 인증서 기본 세트 제공

 

- 2018 JavaSE11 (~2023.09, ~2026.09)

JavaEE 와 JavaFX 삭제.

OpenJDK 와 OracleJDK 완전 동일. OracleJDK 는 구독형 유료 모델 전환(개인은 2021.01부터 유료).

JuluJDK (오라클 TCK 인증 받음, Technology Certification Kit) 는 개인/기업 모두 무료 사용(기술지원은 유료)

 

- 2019 JavaSE12

switch 문 확장

 

- 2019 JavaSE13

yield

 

- 2020 JavaSE14

record

 

- 2020 JavaSE15

Solaris SPARC 플랫폼 지원 제거, sealed class

 

- 2021 JavaSE16

OpenJDK 버전 관리 Git (GitHub 이관)

 

- 2021 JavaSE17

의사난수 생성기, JavaApplet Deprecate