java 버전별 특징(1.0~1.7)
1. java 1.0
- 1996년 1월 발표
- "Write Once, Run Anywhere" > JVM 기반
- 메모리 관리, 다중 상속 등 기존의 문제점을 극복하기 위한 목표를 가지고 접근
- 플랫폼의 안정성 및 웹브라우저에서의 Java Applet 시연으로 급 인기 상승
2. java 1.1
- 1997년 2월 발표
- Inner Class, Java Beans, JDBC, RMI 도입
- reflection 도입 : 공개 인터페이스 부재로 런타임 중 조작 불가.
- Window platform 용의 JIT 방식의 Execution Engine 내 compiler 최초 도입(by Symantec)
- 국제화, Unicode 지원
3. java 1.2 (Playground)
- 1998년 12월 발표
- J2SE, J2ME, J2EE의 세 가지 버전으로 구분
- Swing, Corba IDL(이종기기간 함수 호출 스펙), Collection Framework.
- Sun의 JVM에 JIT 방식 Compiler 최초 탑재
4. java 1.3 (Kestrel)
- 2000년 5월 발표
- HotSpot JVM (Oracle) 내장. JNDI가 core library에 포함.
5. java 1.4 (Merlin)
- 2002년 2월 발표
- JCP(Java Community Process)에 의해서 오픈소스 정책으로 관리되기 시작.
- assert 도입
- 정규식 도입. IPv6 지원. NIO (Non-blocking IO) 도입.
- Logging API, Image IO API, JAXP, Preferences API (java.util.prefs)
- Java Web Start 포함.
- 보안 및 암호화 통합 모델. Java Security.
6. java 5 (Tiger)
- 2004년 9월 발표.
- Type 안전성을 위한 Generic 도입.
- annotation metadata 도입
- primitive type과 Wrapper class 간의 auto boxing, unboxing 제공.
- Enum Object Type 도입.
- varargs : "String... vars " 와 같이 파라미터에 Type에 세개의 . 으로 무한 개수의 파라미터 전달 가능.
- static import 추가. Scanner class 추가.
- The concurrency utilities in package java.util.concurrent
7. java 6 (Mustang)
- 2006년 12월 발표.
- 신규 기능보단 성능 강화에 초점 (core/JVM/Swing)
8. java 7 (Dolphin)
- 2011년 7월 발표
- JVM : invokedynamic 을 이용한 Dynamic Language 지원. 동적 메서드 호출 메커니즘
- 기타 마이너 feature change, upgrade, bug fix.