28. 제네릭 요약


javalogo

Overview

제네릭과 컬렉션에 대한 요약


  • 컬렉션은 요소들의 리스트나 집합을 관리하는 자료 구조로서 요소의 추가, 삭제, 검색 등의 기능을 제공한다.

  • 주요한 컬렉션 클래스에는 Vector<E>, ArrayList<E>, HashMap<K, V>, LinkedList<E>, Stack<E> 등이 있다.

  • 컬렉션은 JDK 1.5 버전 이후 제네릭 기법으로 만들어져 있다.

  • 제네릭은 일반화 시킨 타입의 타입 매개 변수를 이용하여 특정 타입에 종속되지 않도록 클래스나 인터페이스, 메소드를 일반화시키는 기법이다.

  • 컬렉션은 제네릭 타입에 구체적인 타입을 지정하여 사용한다.
    Vector<Integer> v = new Vector<Integer>();
    
  • 컬렉션의 요소로는 오직 객체들만 사용된다.

  • int, char, double 등의 기본 타입을 컬렉션의 요소로 삽입하려면 Wrapper 클래스를 이용하여 기본 타입을 객체로 만들어 사용하면 된다.

  • JDK 1.5부터는 자동 박싱/언박싱이 지원되어 기본 타입을 Wrapper 클래스로 포장하지 않고 컬렉션 클래스의 요소로 삽입하고 추출할 수 있다.

  • List<E> 인터페이스를 구현한 컬렉션의 경우 iterator() 메소드를 호출하면 Iterator 객체를 리턴하며, 이 객체를 이용하여 인덱스 없이 컬렉션의

  • 요소에 대해 순차 검색이 가능하다.

  • Collections 클래스는 컬렉션에 대해 요소 정렬, 검색, 최대 최소값 구하기 등 다양한 유틸리티 메소드를 제공한다.

  • 제네릭을 이용하면 컴파일 시에 타입이 결정되어 불필요한 오류 를 방지하므로 안전한 프로그래밍이 가능하다.

  • 제네릭 클래스 또는 인터페이스 선언은 타입 매개 변수를 클래스나 인터페이스 이름 다음에 추가하여 선언한다.

  • 제네릭 타입으로 제네릭 클래스 내에서 객체와 배열을 생성할 수 없다.

  • 메소드에서도 제네릭 타입 매개 변수를 이용하여 제네릭 메소드를 정의할 수 있다.





© 2019. by RaP0d

Powered by aiden