Целевая аудитория

  • Начинающие IT специалисты

  • Разработчики

  • Все, кто хочет освоить язык Java и увлекается программированием

Программа
  • Разработка классов на Java

    • Основные законы и правила ООП

    • Объявление класса. Структура проекта

    • Элементы класса

    • Создание объектов класса

    • Инкапсуляция

      • Управление доступом, проектирование классов

      • Конструктор класса. Его виды

      • Модификаторы final и static. Смысл и применение статических элементов класса

      • Использование package и команд импорта

      • Наследование

        • Правила и применение наследования

        • Повторное использования кода. Переопределение методов

        • Особенности написания и использования конструкторов при наследовании

        • Полиморфизм

          • Приведение типов и оператор instanceof

          • Понятие виртуальных методов, early и late binding

          • Абстрактные методы. Использование абстрактных классов

          • Интерфейсы и аннотации

            • Понятие интерфейса. Простая аналогия и применение

            • Объявление интерфейса

            • Реализация (имплементация) интерфейса

            • Реализация (имплементация) интерфейса

            • Использование аннотаций. Их назначение для разработки библиотек

            • Специальные классы Java, лямбда-выражения

              • Виды особых классов Java

              • Виды вложенных классов. Перечислимый тип данных

              • Анонимные классы. Инициализация экземпляром

              • Лямбда-выражения

              • Обработка исключительных ситуаций

                • Понятие исключительной ситуации. Отличие от понятия ошибки

                • Виды исключений, способы обработки

                • Операторы try, catch и finally. Оператор try-с-ресурсами

                • Собственные классы исключений

                • Stream API Java

                  • Что такое Stream API

                  • Промежуточные и терминальные операции

                  • Как создавать (.collect) коллекции на основе потоков

                  • Как создавать (.collect) коллекции на основе потоков

                    • Работа с символьными и байтовыми потоками

                    • Сжатие файлов

                    • Сериализация объектов в Java

                    • Работа с файловыми системами

                      • Пакеты java.io и java.nio

                      • Работа с атрибутами файлов

                      • Обход дерева каталогов. Поиск файлов

                      • Коллекции в Java

                        • Фреймворк коллекций в Java

                        • Обзор видов коллекций. Хэш-коллекции

                        • Параметризованные типы данных – generic

                        • Применение generic’ов для взаимодействия между классами, с помощью интерфейсов.

                        • Паттерны проектирования

                          • Обзор типов паттернов

                          • Простейшая надежная реализация паттерна Singleton

                          • Реализация паттерна Publisher/Subscriber, паттерн Observer