Философия Java

         

Философия Java

Конструкторы и полиморфизм
Порядок вызова конструкторов
Наследование и finalize( )
Поведение полиморфных методов внутри конструкторов
Проектировка с наследованием
Чистое наследование против расширения
Приведение к дочернему типу и идентификация типов во время работы

Интерфейсы и внутренние классы
Интерфейсы
Множественное наследование в Java
Конфликты имен при комбинировании интерфейсов

Расширение интерфейса с наследованием
Группировка констант
Инициализирование полей в интерфейсах
Вложенные интерфейсы
Внутренние классы
Внутренний класс и приведение к базовому типу
Внутренние классы в методе и контексте

Анонимный внутренний класс
Связь с внешним классом
Static внутренние классы
Ссылки на объект внешнего класса
Доступ "наружу" из множественно вложенных классов
Наследование от внутренних классов

Может ли быть внутренний класс перегружен?
Идентификаторы внутренних файлов
Зачем внутренние классы?
Замыкания обратные вызовы
Внутренние классы и структуры управления

Хранение Ваших объектов
Массивы
Массивы - первоклассные объекты

Контейнеры примитивов
Возвращение массива
Класс Arrays
Заполнение массива
Копирование массива

Сравнение массивов
Сравнение элементов массива
Сортировка массива
Поиск в отсортированном массиве
Резюме о массивах
Введение в контейнеры
Распечатка контейнера

Заполнение контейнеров
Неудобство контейнеров: неизвестный тип
Иногда это работает так или иначе

Создание сознающего тип ArrayList
Параметризированные типы
Итераторы
Неумышленная рекурсия
Таксономия контейнера
Функциональность Collection
Функциональность List

Создание стека из LinkedList
Создание очереди из LinkedList
Функциональность Set
SortedSet
Функциональность Map

SortedMap
Хеширование и хеш-коды
Понимание hashCode( )
Фактор производительности HashMap

Перегрузка hashCode( )
Хранение ссылок
WeakHashMap
Снова об итераторах
Выбор реализации
Выбор между списками (List)

Выбор между множествами (Set)
Выбор между картами (Map)
Сортировка и поиск в списках
Утилиты
Как сделать Collection или Map неизменяемой
Синхронизация Collection или Map
Провалившееся ускорение

Неподдерживаемые операции
Контейнеры Java 1.0/1.1
Vector и Enumeration
Hashtable
Stack
BitSet

Обработка ошибок с помощью исключений
Основные исключения
Аргументы исключения
Ловля исключения
Содержание раздела