Библиотека knigago >> Компьютеры: Разработка ПО >> Объектно-ориентированное программирование >> Объектно-ориентированное программирование в Java : учебное пособие


СЛУЧАЙНЫЙ КОММЕНТАРИЙ

# 2598, книга: Метеорит в подарок!
автор: Наталия Александровна Кузнецова

"Метеорит в подарок!" Наталии Кузнецовой из серии "Черный котенок" - это увлекательное детское приключение, которое держит в напряжении до последней страницы. Главные герои, любопытный мальчишка Никита и его верный кот Саймон, неожиданно получают в подарок загадочный метеорит. Но вскоре они обнаруживают, что за этим подарком стоит нечто большее, чем кажется на первый взгляд. Окунаясь в мир частных расследований, Никита и Саймон сталкиваются с опасными преступниками и...

Ольга Ивановна Гуськова - Объектно-ориентированное программирование в Java : учебное пособие

Объектно-ориентированное программирование в Java : учебное пособие
Книга - Объектно-ориентированное программирование в Java : учебное пособие.  Ольга Ивановна Гуськова  - прочитать полностью в библиотеке КнигаГо
Название:
Объектно-ориентированное программирование в Java : учебное пособие
Ольга Ивановна Гуськова

Жанр:

Учебники и самоучители по компьютеру, Объектно-ориентированное программирование, Java, Java Script

Изадано в серии:

неизвестно

Издательство:

МПГУ

Год издания:

ISBN:

978-5-4263-0648-6

Отзывы:

Комментировать

Рейтинг:

Поделись книгой с друзьями!

Помощь сайту: донат на оплату сервера

Краткое содержание книги "Объектно-ориентированное программирование в Java : учебное пособие"

Учебное пособие посвящено объектно-ориентированному программированию на языке Java. Рассматриваются основные принципы объектно-ориентированного программирования, средства работы со структурами данных – коллекции и дженерики, принципы объектно-ориентированного дизайна.

Читаем онлайн "Объектно-ориентированное программирование в Java : учебное пособие". [Страница - 28]

(таких, как StringBuilder)

Пример использования усовершенствованного цикла for
для «немутирующих» (неизменяющихся) объектов, таких
как String

154

7. КОЛЛЕКЦИИ

7.6. Интерфейс Collection и его подинтерфейсы List,
Set, Queue
Интерфейс Collection, который принимает в качестве параметра дженерик типа E (читается как «коллекция элементов
типа E), является корневым интерфейсом фреймворка «Коллекции».
Он определяет общее поведение для всех классов, например, устанавливает, как добавить или удалить элемент посредством следующих абстрактных методов:

155

О. И. ГУСЬКОВА. ОБЪЕКТНО ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ В JAVA

Возможна ли коллекция из элементов базовых типов?
Collection не может состоять из элементов базовых типов, таких, например, как int или double. Значения базовых типов должны быть заключены в оболочки объектов (с использо156

7. КОЛЛЕКЦИИ

ванием соответствующих классов-оболочек, таких, например,
как Integer и Double). В JDK 1.5 введены автобоксинг и автоанбоксинг для упрощения процессов автоупаковки и автораспаковки.
См. примеры раздела 7.3 «Автобоксинг и автоанбоксинг...».
На практике обычно программируют на уровне подинтерфейсов
интерфейса Collection: List, Set или Queue, которые имеют следующие спецификации:
• List – список – моделирует массив изменяемого размера,
для которого разрешается доступ по индексу. Список может
содержать повторяющиеся элементы. Часто используемые реализации списка List – это ArrayList, LinkedList, Vector и Stack.
• Set – множество – моделирует математическое множество,
повторяющиеся элементы недопустимы. Часто используемые
реализации подинтерфейса Set – это HashSet и LinkedHashSet.
Подинтерфейс SortedSet моделирует упорядоченное и отсортированное множество элементов, реализованное TreeSet.
• Queue – очередь – моделирует очереди, организованные
по принципу First-in-First-out (FIFO) – «первым вошел – первым вышел». Подинтерфейс Deque моделирует очереди,
с которыми можно работать с двух концов. Реализации включают PriorityQueue, ArrayDeque и LinkedList.
Подробности этих подинтерфейсов и их реализации рассмотрим
далее.

7.7. Интерфейс Map
Интерфейс Map, который принимает два дженерика типов K и V (читается как «Карта ключа типа K и значения типа V»),
используется как коллекция «ключ-значение». Никакие повторяющиеся ключи не разрешены. Часто используемые реализации
включают HashMap, Hashtable и LinkedHashMap. Их подинтерфейс
SortedMap моделирует упорядоченную и отсортированную
карту на основании ключа, реализованного в TreeMap.
157

О. И. ГУСЬКОВА. ОБЪЕКТНО ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ В JAVA

Обратите внимание, что Map не является подинтерфейсом
Collection, поскольку подразумевает использование пары объектов для каждого элемента. Подробности рассмотрим далее в разделе 7.12.

7.8. Интерфейс List и его реализации
На практике принято программировать на уровне одного
из подинтерфейсов коллекции – List, Set или Queue, вместо того
чтобы программировать на уровне суперинтерфейса Collection.
Эти подинтерфейсы в дальнейшем совершенствуют поведение
коллекции.
List – список – моделирует одномерный массив с изменяемой размерностью (структуру данных «список»), поддерживается доступ по индексу. Элементы в списке могут удаляться или добавляться по конкретному индексу в соответствии со значением
переменной int index. Список может содержать повторяющиеся
элементы, может также содержать null элементы. В списке можно
осуществлять поиск, проходя последовательно по его элементам
и совершать операции над переменными выбранного диапазона
значений.
Списки являются наиболее часто используемыми структурами
данных.
Интерфейс List объявляет следующие абстрактные методы,
помимо суперинтерфейсов (см. рис. 7.3).
Поскольку список List имеет индекс, то такие операции, как add(),
remove(), set(), могут быть применены к элементу, находящемуся
на указанной позиции.

158

7. КОЛЛЕКЦИИ

Рис. 7.3. Интерфейсы List и его реализации

159

О. И. ГУСЬКОВА. ОБЪЕКТНО ОРИЕНТИРОВАННОЕ ПРОГРАММИРОВАНИЕ В JAVA

Абстрактный суперкласс AbstractList обеспечивает реализацию для многих абстрактных методов, объявленных в интерфейсах List, Collection, и Iterable. Однако некоторые методы, например,
как get(int index), остаются абстрактными. Эти методы будут реализованы в конкретных подклассах, таких как ArrayList и Vector.
Классы реализаций ArrayList и Vector для интерфейса List
Класс ArrayList является самой лучшей реализацией интерфейса List – массива с изменяющимся размером. --">

Оставить комментарий:


Ваш e-mail является приватным и не будет опубликован в комментарии.