1. 컬렉션 (Collection)
# 객체들을 제어/관리하기 위한 클래스를 의미 (자료구조)
* 배열과 같이 멤버 객체를 관리하기 위한 클래스들을 통틀어 이르는 말
# 컬렉션 프레임워크 (Collection Framework)
- 컬렉션 클래스들과 인터페이스들의 집합
- JDK 1.2버전부터 사용가능
1) 컬렉션 프레임워크의 장점
(1) 프로그래밍의 편리성
- 자료구조나 알고리즘을 직접 구현할 필요없이 바로 사용할 수 있다.
(2) 통합된 API 구조로 인한 효율성 증대와 고성능
- 인터페이스마다 API들이 비슷한 구조로 개발되어 있고, 알고리즘을 이용하여 정렬이나 검색하는데 필요한 API들의 성능이 높다.
(3) 재사용성 증대
- 이미 자료구조 기능을 구현한 클래스들을 제공한다.
2) 컬렉션 프레임워크의 핵심 인터페이스들
2. 컬렉션의 핵심 인터페이스
1) List 인터페이스
# 배열처럼 중복된 데이터를 허용하고 입력된 순서대로 멤버 객체들을 처리할 수 있다.
* FIFO(First In First Out)
* 각 멤버 객체들을 순서대로 관리, 순차 처리, 대량의 데이터를 처리하는데 주로 사용된다.
* 다른 컬렉션들보다 속도가 빠르다는 장점이 있다.
2) Set 인터페이스
# 멤버 객체들의 순서가 없기 때문에 입력한 순서대로 출력되지 않으며, 중복 데이터를 허용하지 않는 장점이 있다.
3) Map 인터페이스
# Key / Value 구조로 되어있으며,
Key는 배열의 index와 같은 역할을, Value는 배열의 멤버 객체 같은 역할을 한다.
* Map 컬렉션에 추가하고자 하는 객체는 value에 저장되며 그 value를 가리키기 위한 고유의 값이 key에 저장된다.
* key는 모든 데이터 타입으로 설정 가능하다. (Object 객체도 가능)
* 개발자가 직접 key값을 생성하거나 관리할 수 있어, 원하는 데이터를 빠르고 쉽게 참조할 수 있다는 장점이 있다.
3. 컬렉션 인터페이스의 메소드
- 인터페이스끼리 서로 상속할 수 있으며 다중 구현이 가능하다.
- 컬렉션 인터페이스의 메소드는 공용
'JAVA > JAVA2' 카테고리의 다른 글
JAVA2_day14 | 컬렉션 (Collection) (2) List 인터페이스 (0) | 2018.01.31 |
---|---|
JAVA2_day14 | Generic (제네릭 기법) (0) | 2018.01.31 |
JAVA2_day13 | GUI 연습문제 (2) (0) | 2018.01.30 |
JAVA2_day13 | GUI (PopupMenu, MenuItem) (0) | 2018.01.30 |
JAVA2_day12 | 내부 클래스 (Inner class) (0) | 2018.01.30 |