본문 바로가기
자바/자바 자료구조

부록: 자바에서 자료구조랑 연관 있는 인터페이스들

by 신재은👩🏼‍💻 2024. 4. 28.

나는 자바로 코테를 풀기 위해 반드시 알아야 하는 기본적인 인터페이스와 클래스만 언급했다.

내가 말하지 않은 것들이 몇몇 있다.

나중에 그것에 대해 또 언급할 기회가 있을지 없을지 모르기 때문에 필요하면 혼자서 더 공부하길 바라는 마음에서

여기에 관련 인터페이스를 언급한다.

주요 컬렉션 인터페이스

  • Collection: 모든 컬렉션 클래스의 기본 인터페이스.
  • List: 순서가 있는 컬렉션을 다루기 위한 인터페이스. 중복을 허용합니다.
  • Set: 중복을 허용하지 않는 컬렉션을 다루기 위한 인터페이스.
  • SortedSet: 정렬된 순서로 요소를 저장하는 세트.
  • NavigableSet: SortedSet을 확장하여 탐색 가능한 기능을 제공합니다.
  • Queue: 특정 순서로 요소를 처리하기 위한 컬렉션 인터페이스 (보통 FIFO).
  • Deque: 양방향 큐 기능을 제공하는 인터페이스 (스택과 큐의 기능 제공).
  • Map: 키와 값의 쌍으로 요소를 저장하는 자료구조.
  • SortedMap: 키에 따라 정렬된 순서로 쌍을 저장하는 맵.
  • NavigableMap: SortedMap을 확장하여 탐색 기능을 추가한 맵.

주요 함수형 인터페이스

  • Iterator: 컬렉션의 요소들을 하나씩 처리하기 위한 인터페이스.
  • Iterable: Iterator 객체를 반환할 수 있는 클래스가 구현해야 하는 인터페이스.
  • Comparator: 객체들을 비교하는 데 사용되는 메소드를 정의. 컬렉션의 정렬에 주로 사용됩니다.

동시성 컬렉션 인터페이스

  • ConcurrentMap: 동시성 접근이 가능한 Map 인터페이스.
  • BlockingQueue: 요소를 추가하거나 제거할 때 블록할 수 있는 Queue 인터페이스의 확장.
  • BlockingDeque: BlockingQueue의 기능을 덱으로 확장한 인터페이스.

뷰 및 기타 인터페이스

  • ListIterator: Iterator를 확장하여, 양방향 이동과 요소의 수정, 추가, 삭제를 가능하게 하는 인터페이스.
  • RandomAccess: 리스트가 빠른 무작위 접근을 지원한다는 것을 표시하는 마커 인터페이스.
  • Cloneable: 객체가 복제(clone) 가능하다는 것을 표시하는 마커 인터페이스.

이 인터페이스들은 자바의 컬렉션 프레임워크의 핵심 부분을 이루며, 각각 특정 자료구조의 특성에 맞게 설계되어 있습니다. 이러한 인터페이스를 통해 자바는 다양한 데이터 조작 요구 사항을 효과적으로 지원할 수 있습니다.

 

본 블로그에서 제대로 언급하지 않은 인터페이스는 형광펜 처리 해 놨다.

다음에 시간이 되어 해당 내용을 포스팅 하면 형광펜 처리를 지우겠다.