📚참고
컬렉션 프레임워크와 핵심 인터페이스

 

 

 

 

 

 

 

 

 

컬렉션 (Collection)

  • 객체(데이터)를 모아놓은 것

 

 

 

 

프레임워크(Framework)

  • 정형화된 프로그래밍 방식
  • Library (기능 제공) + 프로그래밍 방식 =>
    • 자유도는 떨어지지만 정해진대로 하면 되니까 생산성 높아짐
    • 정해진 방식이 있으니까 다른 개발자가 와도 유지보수 쉬움

 

 

 

 

라이브러리 (Library)

  • 남들이 만든 기능을 모아둠 (단순히 기능만을 제공)
  • ex) 오디오/통계/수학 라이브러리, JAVA API

 

 

 

 

컬렉션 프레임워크 (Collection Framework)

  • 컬렉션(다수의 객체)을 다루기위한 정형화된 프로그래밍 방식
  • 컬렉션(다수의 객체)을 쉽고 편하게 다룰 수 있는 다양한 클래스(컬렉션 클래스)를 제공 =>
    • 객체 저장, 삭제, 검색, 정렬 등을 편하게 다룰 수 있음
  • 컬렉션 프레임워크는 java.util 패키지에 포함됨
  • 컬렉션 프레임워크는 JDK1.2부터 제공함 (전엔 표준화 X)

 

 

 

 

컬렉션 클래스 (Collection Class)

  • 많은 데이터를 저장할 수 있는 클래스
  • ex) Vector, ArrayList, HashSet

 

 

 

 

컬렉션 프레임워크의 핵심 인터페이스

 

List와 Set의 공통부분을 뽑아 Collection 인터페이스 정의, Map은 단일값인 List, Set과 달리 '키-값' 형태라 공통부분 추출 못함 

 

  저장 순서 중복허용 예시 비고
List O O 대기자 명단 ArrayList, LinkedList, Stack, Vector
Set X X 네발동물 집합 HashSet, TreeSet
Map X 키X
값O
지역번호 (02-서울),
id-password
HashMap, TreeMap, HashTable, Properties

 

 

 

 

 

List 인터페이스

 

 

  • 저장순서O, 중복허용O
  • Vector는 구버전 ArrayList는 신버전
    • Vector는 동기화O
    • ArrayList는 동기화X
  • ArrayList, LinkedList가 핵심

 

 

 

 

Set 인터페이스

 

  • 저장순서X, 중복허용X
  • HashSet, TreeSet이 핵심

 

 

 

 

Map 인터페이스

 

 

  • 저장순서X, 중복허용(키X, 값O)
  • HashTable은 올드버전, HashMap은 신버전 => 차이는 동기화 유무
    • HashTable은 동기화O
    • HashMap은 동기화X
  • HashMap, TreeMap이 핵심

 

 

 

 

 

 

 

 

 

 

'JAVA > 컬렉션 프레임워크' 카테고리의 다른 글

Set  (0) 2021.06.15
Comparator & Comparable  (0) 2021.06.01
Arrays  (0) 2021.05.31
Iterator  (0) 2021.05.18
LinkedList  (0) 2021.05.04