Учебное пособие
Кафедра автоматизации обработки информации
Библиографическая запись:
Оглавление (содержание)
Оглавление
Введение ...................................................................................................................... 5
1 Концепции объектно-ориентированного программирования...................... 7
1.1 Классы и объекты............................................................................................ 7
1.2 Геттеры и сеттеры ......................................................................................... 12
1.3 Перегрузка методов....................................................................................... 13
1.4 Ключевые слова this и super......................................................................... 15
1.5 Метод toString() ............................................................................................. 17
1.6 Конструкторы ................................................................................................ 18
1.7 Определение класса в Java ........................................................................... 23
1.8 Принципы ООП............................................................................................. 26
1.8.1 Абстракция.......................................................................................... 26
1.8.2 Инкапсуляция ..................................................................................... 28
1.8.3 Наследование...................................................................................... 31
1.8.4 Полиморфизм ..................................................................................... 33
1.9 Переопределение методов............................................................................ 34
1.10 Подстановка ................................................................................................. 36
1.11 Апкастинг и даункастинг ........................................................................... 38
1.12 Оператор instanceof ..................................................................................... 39
1.13 Абстрактные классы и интерфейсы .......................................................... 40
1.13.1 Абстрактные классы ........................................................................ 40
1.13.2 Интерфейсы ...................................................................................... 44
2 Типы отношений между классами и объектами............................................ 49
2.1 Ассоциация .................................................................................................... 52
2.2 Агрегация ....................................................................................................... 53
2.3 Композиция.................................................................................................... 53
2.4 Наследование ................................................................................................. 54
3 Введение во фреймворк «Коллекции». Обобщения...................................... 56
3.1 Коллекции ...................................................................................................... 56
3.2 Перебор элементов коллекций..................................................................... 60
3.3 Обобщения ..................................................................................................... 65
3.3.1 Универсальные классы (generic class) и интерфейсы.................... 70
3.3.2 Дженерик-методы и универсальные конструкторы....................... 78
3.3.3 Подстановочные символы (wildcard)............................................... 81
4 Потоки ввода-вывода и потоки выполнения.
Многопоточное программирование .................................................................... 88
4.1 Потоки ............................................................................................................ 88
4.2 Сериализация и десериализация объектов ............................................... 100
4.2.1 Сериализация.................................................................................... 102
4.2.2 Десериализация ................................................................................ 103
4.2.3 Исключение данных из сериализации ........................................... 107
4.2.4 Сериализация статических полей................................................... 108
4.2.5 Сериализация с массивом или коллекцией ................................... 112
4.2.6 Сериализация Java с наследованием.............................................. 114
4.2.7 Сериализация Java с агрегированием ............................................ 116
4.2.8 SerialVersionUID............................................................................... 119
4.3 Потоки выполнения .................................................................................... 121
4.4. Жизненный цикл потока............................................................................ 126
4.5 Многопоточность ........................................................................................ 127
4.5.1 Главный поток.................................................................................. 128
4.5.2 Создание и завершение потоков..................................................... 129
4.5.3 Завершение потока........................................................................... 132
4.5.4 Управление приоритетами .............................................................. 134
4.5.5 Синхронизация потоков .................................................................. 136
4.5.6 Состояния потока ............................................................................. 153
4.5.7 Блокировка........................................................................................ 154
5 Лямбда-выражения............................................................................................ 158
Заключение ............................................................................................................. 180
Литература.............................................................................................................. 181
Глоссарий................................................................................................................ 183
Информационные технологии
11.03.04 Электроника и наноэлектроника (Промышленная электроника) Очная форма обучения, план набора 2019 г. План в архиве