Enhanced for loop는 JDK 5에서 추가된 기능으로, 기존 for 루프보다 명확하게 코드를 읽을 수 있고, 간결하게 순회를 할 수 있도록 해준다.
Generic은 JDK 5에서 추가된 대표적인 기능 중 하나이다. 이 글에서는 Generic의 사용법보다는 동작 원리에 대해서 살펴보고자 한다.
JDK 5부터 Auto Boxing / Unboxing을 지원한다. 여기서 Boxing이란 int 같은 primitive 타입 자료형을 Integer등의 Wrapper 클래스로 바꾸는것을 의미한다.
JDK 5 이전에는 열거형을 쓰려면 여러 Enumerate 생성 패턴에 따라 만들어서 썼다. 가장 일반적인 방법은 public static final int로 필드를 선언하는 것이었다.
가변인자라고 부르는 Varargs 또한 JDK 5에서 도입된 기능이다. 이 Varargs는 필요에 따라 매개변수의 개수를 가변적으로 조정할 수 있는 기능이다.
JDK5에서 Static import가 추가되었다. 먼저 static import를 적용하지 않은 일반 코드를 보자. 가장 기본적인 용법은 import문 뒤에 static을 붙이고, {패키지.클래스.\*} 혹은 {패키지.클래스.멤버} 를 적으면 된다.
Enumeration에 대한 관찰에서 Enum에 대해 알아보았다. 이번에는 Enum을 효율적으로 사용 하는 방법 중 하나인 EnumMap을 살펴보자.
이 글에서는 Generic의 사용법과 함께 Generic 타입 제한, 와일드 카드 문법에 대해 다룬다.