Что такое иерархия интерфейсов Collection Framework ?
Спросят с вероятностью 12%
Java Collection Framework (JCF) — это унифицированная архитектура для представления и манипулирования коллекциями, позволяющая работать с наборами объектов различными способами. Он состоит из нескольких интерфейсов и их реализаций, обеспечивая разработчикам гибкие инструменты для работы с данными.
Основные интерфейсы:
1️⃣Collection: Корневой интерфейс, предоставляющий основные методы для работы с группой объектов, такие как добавление, удаление и проверка размера коллекции. Не реализуется напрямую.
2️⃣List: Представляет упорядоченную коллекцию (также известную как последовательность). Элементы могут быть доступны по индексам, могут содержать дубликаты.
✅ArrayList: Динамический массив.
✅LinkedList: Двусвязный список.
✅Vector: Синхронизированный динамический массив (устаревший).
✅Stack: Расширение класса Vector, реализующее структуру данных стек (LIFO).
3️⃣Set: Коллекция, не содержащая дублирующих элементов.
✅HashSet: Основан на хеш-таблице.
✅LinkedHashSet: Хеш-таблица с сохранением порядка вставки.
✅TreeSet: Основан на красно-чёрном дереве, элементы отсортированы.
4️⃣Queue: Коллекция для хранения элементов перед их обработкой. Элементы удаляются в порядке, определённом политикой очереди.
✅LinkedList: Может также использоваться как очередь.
✅PriorityQueue: Элементы удаляются в соответствии с их приоритетами.
5️⃣Deque: Двусторонняя очередь, позволяющая вставку и удаление с обоих концов.
✅ArrayDeque: Реализация интерфейса Deque, использующая массив.
Интерфейсы для работы с "картами" (не наследуются от Collection):
6️⃣Map: Объект, хранящий пары "ключ-значение". Ключи уникальны.
✅HashMap: Хеш-таблица для хранения пар "ключ-значение".
✅LinkedHashMap: Хеш-таблица с сохранением порядка вставки.
✅TreeMap: Отсортированная карта на основе красно-чёрного дерева.
✅Hashtable: Синхронизированная реализация Map (устаревшая).
Специализированные коллекции:
✅EnumSet и EnumMap: Эффективные реализации интерфейсов Set и Map для использования с перечислениями (enums).
Эта иерархия обеспечивает гибкость и мощные инструменты для работы с наборами данных, позволяя выбирать структуру данных в зависимости от требований к производительности, порядку элементов и уникальности значений.
➡️Примеры ответов
➡️ Список всех вопросов на Java Developer
🧩 Идущий | 🔐 Собесы | 🔐 Тестовые
Post #36
5.44K
- 👍 25
- ❤ 2