Глава 1. Введение в Java
Глава 2. Основы программирования на Java
- Типы данных и переменные
- Преобразования базовых типов данных
- Операции языка Java
- Массивы
- Условные конструкции
- Циклы
- Методы
- Рекурсивные функции
- Консольный ввод/вывод в Java
- Введение в обработку исключений
Глава 3. Классы. Объектно-ориентированное программирование
- Классы и объекты
- Пакеты
- Модификаторы доступа и инкапсуляция
- Статические члены и модификатор static
- Объекты как параметры методов
- Наследование, полиморфизм и ключевое слово super
- Абстрактные классы
- Иерархия наследования и преобразование типов
- Внутренние классы
- Интерфейсы
- Интерфейсы в механизме обратного вызова
- Перечисления enum
- Класс Object и его методы
- Обобщенные типы и методы
- Наследование и обобщения
- Ссылочные типы и клонирование объектов
Глава 4. Обработка исключений
- Оператор throws
- Классы исключений
- Создание своих классов исключений
Глава 5. Коллекции
- Введение в коллекции в Java
- Класс ArrayList и интерфейс List
- Класс LinkedList
- Класс HashSet
- Класс TreeSet
- Интерфейсы Comparable и Comporator. Сортировка
- Очереди и класс ArrayDeque
- Отображения и класс HashMap
- Класс TreeMap
- Итераторы
Глава 6. Потоки ввода-вывода. Работа с файлами
- Потоки ввода-вывода
- Закрытие потоков
- Чтение и запись файлов. FileInputStream и FileOutputStream
- Классы ByteArrayInputStream и ByteArrayOutputStream
- Буферизуемые потоки. Классы BufferedInputStream и BufferedOuputStream
- Классы PrintStream и PrintWriter
- Классы DataOutputStream и DataInputStream
- Чтение и запись текстовых файлов. FileReader и FileWriter
- Буферизируемые символьные потоки. BufferedReader и BufferedWriter
- Сериализация объектов
- Класс File. Работа с файлами и каталогами
- Работа с ZIP-архивами
- Класс Console
Глава 7. Работа со строками
- Введение в строки. Класс String
- Основные операции со строками
- StringBuffer и StringBuilder
- Регулярные выражения
Глава 8. Многопоточное программирование
- Класс Thread
- Создание и завершение потоков
- Синхронизация потоков. Оператор synchronized
- Взаимодействие потоков. Задача «Producer-Consumer»
- Методы wait и notify
- Блокировки. ReentrantLock
- Условия в блокировках
- Семафоры
- Обмен между потоками. Класс Exchanger
- Класс Phaser
Глава 9. Лямбда-выражения
- Введение в лямбда-выражения
- Лямбды как параметры методов и ссылки на методы
- Встроенные функциональные интерфейсы
Глава 10. Stream API
- Введение в Stream API
- Создание потока данных
- Фильтрация, перебор элементов и отображение
- Методы skip и limit
- Операции сведения. Метод reduce
- Метод collect
- Группировка
- Сортировка
- Параллельные потоки
- Параллельные операции над массивами
Данное руководство собрано опираясь на другие сайты и личный опыт для личного пользования как заметок