Java

[Java] 컬렉션 프레임워크

junga 2022. 9. 19. 23:34

컬렉션 프레임워크(collection framework)


  • 다수의 데이터를 쉽고 효과적으로 처리할 수 있는 표준화된 방법을 제공하는 클래스의 집합을 의미한다.
  • 즉, 데이터를 저장하는 자료 구조와 데이터를 처리하는 알고리즘을 구조화하여 클래스로 구현해 놓은 것이다.
  • 컬렉션 프레임워크는 자바의 인터페이스를 사용하여 구현된다.


컬렌션 프레임워크 주요 인터페이스


  1. List 인터페이스(List)
  • 순서가 있는 데이터의 집합으로, 데이터의 중복을 허용한다.
  • 구현 클래스: Vector, ArrayList, LinkedList, Stack, Queue


  1. Set 인터페이스(Set)
  • 순서가 없는 데이터의 집합으로, 데이터의 중복을 허용하지 않는다.
  • 구현 클래스: HashSet, TreeSet


  1. Map 인터페이스(Map<K, V>)
  • 키와 값의 한 쌍으로 이루어지는 데이터의 집합으로, 순서가 없다. (키 중복 X, 값 중복 O)
  • 구현 클래스: HashMap, TreeMap, Hashtable, Properties


이 중 List, Set 인터페이스는 모두 Collection 인터페이스를 상속받지만,
구조상의 차이로 Map 인터페이스는 별도로 정의돼있다.

http://www.tcpschool.com/java/java_collectionFramework_concept

위 이미지는 주요 인터페이스 간의 상속 관계를 보여준다.
컬렉션 프레임워크를 구성하는 모든 클래스가 제네릭으로 표현돼있는 것을 볼 수 있다.



컬렌셕 클래스


  • 컬렉션 프레임워크에 속하는 인터페이스(List, Set, Map)를 구현한 클래스를 말한다.
  • AraayList, HashSet, HashMap 등


Collection 인터페이스


  • List, Set 인터페이스의 공통된 부분을 Collection 인터페이스에서 정의하고, 두 인터페이스는 이를 상속받는다.
  • 따라서 Collection 인터페이스는 컬렉션을 다루는데 가장 기본적인 동작들을 정의하고, 메소드로 제공하고 있다.

| 참고로 Collection은 여러 원소들을 담을 수 있는 자료구조를 뜻한다.

http://www.tcpschool.com/java/java_collectionFramework_concept