본문 바로가기
프로그래밍/java

이제 시작이라 그런가... 자바 5의 특징이 실감나지 않는다.

by 신일석 2008. 4. 10.
'자바 5'의 특징이랍니다. 자바 공부한지 이틀이 지나서 인지, 그리고 과거 자바의 어려운 시절을 건너뛴 축복 받은 세대하는 말때문인지 그이 실감나지 않네요.

1. 성능 측면
 - VM 성능이 최소 20%의 성능 향상됨
 - Class Data Sharing에 따른 어플리케이션 시작 시간 단축됨
 - Garbage Collector 성능 향상됨

2. 개발 언어 측면
 - Generics
   : 클래스 생성 시 리턴 타입도 지정이 가능함
   : 예) class Member {}
   : Member member = new Member(2);
 - Enhanced for Loop
   : 배열이나 Collection을 자동 탐색하여 내용을 분해해 줌
   : 예) for (String str : strs) {System.out.println(str);}
 - Autoboxing/Unboxing
   : 예) Integer i = 1; int j = i;
   : 여기 참조
 - Enums Type
   : c 언어의 enum 타입과 유사
   : 예) public enum itemEnum {ITEM1, ITEM2, ITEM3};
   : System.out.println(itemEnum.ITEM1);
 - Variable Argument
   : 가변 파라미터
   : 예) public static int sum(int... data) {..}
   : int total = sum(1,2,3,4,5);
 - Static Import
   : static import 를 사용하여 클래스명 사용없이 static 멤버 변수와 static 멤버 함수로 접근 가능
   : 예) import static java.lang.Math.*;
 - Annotations
   : 코드 조각의 작성자 명이나 컴파일러가 특정 오류를 억제하도록 지시하는 것과 같이 프로그램의 일부가 아닌 프로그램에 관한 데이터를 제공해 줌
   : 예) @Author("MyName"), @SuppressWarnings("unchecked"),
    @Deprecated, @Override, @SuppressWarnings

3. 개발 환경 측면
 - Eclipse 3.2 이상부터 5.0 이상의 컴파일러 요구
 - Hot Swapping 기능을 사용하면 WAS를 재 시작 하지 않아도 자동으로 변경된 부분이 적용이 됨
 - 오픈 소스들의 대부분 5.0이상을 요구함