Java from EPAM : учебно-методическое пособие [Игорь Николаевич Блинов] (pdf) читать постранично Книга в формате pdf ! Изображения и текст могут не отображаться!
[Настройки текста] [Cбросить фильтры]
Цвет фона черный светло-черный бежевый бежевый 2 персиковый зеленый серо-зеленый желтый синий серый красный белый
Цвет шрифта белый зеленый желтый синий темно-синий серый светло-серый тёмно-серый красный
Размер шрифта 14px 16px 18px 20px 22px 24px
Шрифт Arial, Helvetica, sans-serif "Arial Black", Gadget, sans-serif "Bookman Old Style", serif "Comic Sans MS", cursive Courier, monospace "Courier New", Courier, monospace Garamond, serif Georgia, serif Impact, Charcoal, sans-serif "Lucida Console", Monaco, monospace "Lucida Sans Unicode", "Lucida Grande", sans-serif "MS Sans Serif", Geneva, sans-serif "MS Serif", "New York", sans-serif "Palatino Linotype", "Book Antiqua", Palatino, serif Symbol, sans-serif Tahoma, Geneva, sans-serif "Times New Roman", Times, serif "Trebuchet MS", Helvetica, sans-serif Verdana, Geneva, sans-serif
Насыщенность шрифта жирный
Обычный стиль курсив Ширина текста 400px 500px 600px 700px 800px 900px 1000px 1100px 1200px Показывать меню Убрать меню Абзац 0px 4px 12px 16px 20px 24px 28px 32px 36px 40px
Межстрочный интервал 18px 20px 22px 24px 26px 28px 30px 32px
И. Н. Блинов
В. С. Романчик
Java
from EPAM
Учебно-методическое пособие
МИНСК
ИЗДАТЕЛЬСТВО «ЧЕТЫРЕ ЧЕТВЕРТИ»
2020
УДК 004.434
ББК 32.973.26-018.2
Б69
Рецензенты:
кандидат технических наук, доцент В. Д. Левчук,
кандидат технических наук, доцент О. Г. Смолякова
Рекомендовано
Ученым Советом механико-математического факультета Белорусского государственного
университета в качестве пособия для студентов высших учебных заведений,
обучающихся по специальностям
1-31 03 08 «Математика и информационные технологии (по направлениям)»,
1-31 03 01 «Математика (по направлениям)»
Б69
Блинов, И. Н., Романчик, В. С.
Java from EPAM : учеб.-метод. пособие / И. Н. Блинов, В. С. Романчик. — Минск :
Четыре четверти, 2020. — 560 с.
ISBN 978-985-581-391-1.
Пособие предназначено для программистов, начинающих и продолжающих изучение технологий
Java SE. В книге рассматриваются основы языка Java и концепции объектно-ориентированного
и функционального программирования. Также изложены аспекты применения библиотек классов
языка Java, включая файлы, коллекции, Stream API, сетевые и многопоточные приложения, а также
взаимодействие с СУБД и ХМL.
В конце каждой главы даются теоретические вопросы по изученной главе, тестовые вопросы по
материалу главы и задания для выполнения. В приложениях приведены дополнительные материалы
с кратким описанием технологий Log4J2 и TestNG.
УДК 004.434
ББК 32.973.26-018.2
ISBN 978-985-581-391-1
© Блинов И. Н., Романчик В. С., 2020
© Оформление. ОДО «Издательство
“Четыре четверти”», 2020
ОГЛАВЛЕНИЕ
ПРЕДИСЛОВИЕ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Глава 1. ВВЕДЕНИЕ В ООП И ФП . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Глава 2. ТИПЫ ДАННЫХ И ОПЕРАТОРЫ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Глава 3. КЛАССЫ И МЕТОДЫ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65
Глава 4. НАСЛЕДОВАНИЕ И ПОЛИМОРФИЗМ . . . . . . . . . . . . . . . . . . . . . . . . . . . . 121
Глава 5. ВНУТРЕННИЕ КЛАССЫ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 159
Глава 6. ИНТЕРФЕЙСЫ И АННОТАЦИИ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177
Глава 7. ФУНКЦИОНАЛЬНЫЕ ИНТЕРФЕЙСЫ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
Глава 8. СТРОКИ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 225
Глава 9. ИСКЛЮЧЕНИЯ И ОШИБКИ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 264
Глава 10. ПОТОКИ ВВОДА/ВЫВОДА . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 290
Глава 11. КОЛЛЕКЦИИ И STREAM API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320
Глава 12. ПОТОКИ ВЫПОЛНЕНИЯ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 369
Глава 13. JAVA DATABASE CONNECTIVITY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 428
Глава 14. СЕТЕВЫЕ ПРОГРАММЫ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 461
Глава 15. JAVA API FOR XML PROCESSING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 489
ОТВЕТЫ НА ТЕСТОВЫЕ ВОПРОСЫ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 521
Приложение 1. Log4J2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 522
Приложение 2. TestNG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 540
3
СОДЕРЖАНИЕ ГЛАВ
ПРЕДИСЛОВИЕ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Глава 1. ВВЕДЕНИЕ В ООП И ФП . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Базовые понятия ООП . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
Базовые понятия ФП . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Базовые понятия Java . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
Простое приложение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
Установка JDK и IDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16
Компиляция и запуск приложения . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
Основы классов и объектов . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
Объектные ссылки . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
Консольный ввод\вывод . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Base code conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
Вопросы к главе 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Задания к главе 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Тестовые задания к главе 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Глава 2. ТИПЫ ДАННЫХ И ОПЕРАТОРЫ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Базовые типы данных и литералы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Документирование кода . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35
Операторы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37
Классы-оболочки . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
Оператор условного перехода . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
Оператор выбора . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
Циклы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54
Массивы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
Вопросы к главе 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59
Задания к главе 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60
Тестовые задания к главе 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62
Глава 3.
Последние комментарии
2 часов 41 минут назад
2 часов 43 минут назад
15 часов 26 минут назад
18 часов 14 минут назад
2 дней 4 часов назад
2 дней 13 часов назад