Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- DP
- 따라하면서 배우는 C언어
- Python
- programmers
- php
- greedy
- String
- 정수론
- server
- Cleancode
- C
- BOJ
- udemy
- sorting
- C언어
- JavaScript
- 인프런
- Algorithm
- 따배씨
- 종만북
- Math
- 백준
- BFS
- 생활코딩
- graph
- BASIC
- 따라하며 배우는 C언어
- Algospot
- dfs
- web
Archives
- Today
- Total
몽상실현개발주의
Java 컬렉션 프레임워크 인터페이스와 상속 관계 본문
Java 컬렉션 프레임워크는 데이터를 그룹으로 관리하고 조작하는 데 사용되는 인터페이스와 클래스를 제공하는 중요한 구성 요소입니다. 이번 포스트에서는 Java의 주요 컬렉션 인터페이스와 그들의 상속 관계에 대해 알아보겠습니다.
주요 컬렉션 인터페이스
- Collection Interface:
- 모든 컬렉션 클래스가 구현해야 하는 기본 인터페이스입니다.
- 주요 메서드: add(), remove(), size(), clear(), contains(), isEmpty(), iterator(), 등.
- List Interface:
- 순서가 있는 요소의 컬렉션을 정의합니다. 중복 요소를 허용합니다.
- 구현 클래스: ArrayList, LinkedList, Vector, Stack.
- 주요 메서드: get(), set(), add(), remove(), indexOf(), lastIndexOf(), subList(), 등.
- Set Interface:
- 중복을 허용하지 않는 요소의 집합을 정의합니다.
- 구현 클래스: HashSet, LinkedHashSet, TreeSet.
- 주요 메서드: add(), remove(), contains(), size(), 등.
- SortedSet Interface:
- Set 인터페이스를 확장하며, 요소를 정렬된 상태로 유지합니다.
- 구현 클래스: TreeSet.
- 주요 메서드: first(), last(), headSet(), tailSet(), subSet(), 등.
- NavigableSet Interface:
- SortedSet을 확장하며, 네비게이션 메서드를 제공합니다.
- 구현 클래스: TreeSet.
- 주요 메서드: lower(), floor(), ceiling(), higher(), pollFirst(), pollLast(), 등.
- Queue Interface:
- FIFO(First-In-First-Out) 순서로 요소를 유지합니다.
- 구현 클래스: LinkedList, PriorityQueue, ArrayDeque.
- 주요 메서드: offer(), poll(), peek(), 등.
- Deque Interface:
- 양쪽 끝에서 요소를 추가하거나 제거할 수 있는 Queue를 정의합니다.
- 구현 클래스: ArrayDeque, LinkedList.
- 주요 메서드: addFirst(), addLast(), removeFirst(), removeLast(), getFirst(), getLast(), 등.
- Map Interface:
- 키와 값의 쌍으로 데이터를 저장합니다.
- 키는 중복을 허용하지 않으며, 각 키는 하나의 값에 매핑됩니다.
- 구현 클래스: HashMap, LinkedHashMap, TreeMap, Hashtable, Properties.
- 주요 메서드: put(), get(), remove(), containsKey(), containsValue(), keySet(), values(), 등.
- SortedMap Interface:
- Map 인터페이스를 확장하며, 키를 정렬된 상태로 유지합니다.
- 구현 클래스: TreeMap.
- 주요 메서드: firstKey(), lastKey(), headMap(), tailMap(), subMap(), 등.
- NavigableMap Interface:
- SortedMap을 확장하며, 네비게이션 메서드를 제공합니다.
- 구현 클래스: TreeMap.
- 주요 메서드: lowerKey(), floorKey(), ceilingKey(), higherKey(), pollFirstEntry(), pollLastEntry(), 등.
인터페이스 간의 상속 관계
Java 컬렉션 프레임워크의 인터페이스 간 상속 관계를 도식화하면 다음과 같습니다. 상속 관계는 하위 인터페이스에서 상위 인터페이스로의 상속을 의미하며, 이를 통해 각 인터페이스의 구조와 계층을 명확히 이해할 수 있습니다.
- Collection은 List, Set, Queue 인터페이스의 상위 인터페이스입니다.
- Set은 SortedSet 인터페이스의 상위 인터페이스입니다.
- SortedSet은 NavigableSet 인터페이스의 상위 인터페이스입니다.
- Queue는 Deque 인터페이스의 상위 인터페이스입니다.
- Map은 SortedMap 인터페이스의 상위 인터페이스입니다.
- SortedMap은 NavigableMap 인터페이스의 상위 인터페이스입니다.
결론
Java 컬렉션 프레임워크는 다양한 인터페이스를 통해 데이터 구조를 체계적으로 관리할 수 있도록 도와줍니다. 각 인터페이스의 특성과 상속 관계를 이해하면, 필요에 따라 적절한 컬렉션을 선택하여 사용할 수 있습니다. 이 포스트를 통해 Java 컬렉션 프레임워크의 인터페이스와 그들의 관계를 보다 쉽게 이해할 수 있기를 바랍니다.
'Dev' 카테고리의 다른 글
리플렉션과 Private : Java의 강력한 도구와 그 위험성 (0) | 2024.05.15 |
---|---|
Spring Boot에서 의존성 주입: @Bean과 @Autowired의 이해 (0) | 2024.05.06 |
빌더 패턴의 이해와 Java에서의 적용 (0) | 2024.05.06 |
Lombok in Spring Framework (0) | 2024.05.06 |
SpringBoot VO 와 DTO (0) | 2024.05.05 |
Comments