Наша цель – подготовка IT-экспертов,
обладающих уникальным сочетанием
теоретических и практических навыков
В.А. Сухомлин,
профессор, д.т.н., руководитель ВКШ

Курс 5JPF "Основы программирования на языке Java"

 

После изучения курса вы сможете

  • Cоздавать приложения на языке Java
  • Создавать многопоточные программы
  • Использовать исключения
  • Использовать обобщения (Generics)
  • Компоновать элементы графического интерфейса
  • Использовать модели событий
  • Создавать GUI-приложения с использованием технологии SWING
  • Создавать сетевые приложения, использующие протокол TCP/IP

Содержание курса

  1. Основы технологии Java. Понятия и термины
    • Краткая история Java
    • Преимущества и особенности Java
    • Понятия и термины
    • Комментарии в языке Java
    • Алфавит языка Java
    • Зарезервированные слова
  2. Типы данных, переменные и операторы
    • Примитивные типы данных
    • Объявления переменных
    • Область действия и значения по умолчанию
    • Приведение типов
    • Операторы
    • Перечисления
  3. Управление течением программы
    • Составные операторы
    • Условные выражения : оператор if-then
    • Условные выражения : оператор switch/case
    • Циклы: цикл с предусловием while…
    • Циклы: цикл с постусловием do… while
    • Циклы: цикл с фиксированным количеством итераций for
    • Циклы: цикл перебора коллекций типа foreach
  4. Методы
    • Создание и использование метода
    • Возврат значения из метода
    • Передача параметров в метод
    • Перегрузка методов
    • Методы с переменным количеством параметров
  5. Массивы
    • Определение массивов
    • Одномерные массивы в Java
    • Многомерные и иррегулярные массивы
    • Инициализация и управление массивами
  6. Классы и объекты
    • Объектно-ориентированная концепция
    • Переменные класса и экземпляра класса
    • Объектные ссылки и сборка мусора
  7. Наследование
    • Механизм наследования в Java
    • Перекрытие методов и позднее связывание
    • Методы класса Object
  8. Конструкторы
    • Предназначение конструкторов
    • Использование конструкторов
    • Порядок работы конструкторов
    • Обратный вызов как пример использования конструкторов
  9. Обобщенное программирование
    • Общие сведения о настраиваемых типах
    • Создание настраиваемого типа
    • Ограниченные типы и метасимвольные аргументы
    • Ограниченные типы и коллекции
    • Ограничения настраиваемых типов
  10. Работа со строкам
    • Класс String и его особенности
    • Методы класса String
    • Сравнение классов String и StringBuffer
  11. Абстрактные классы и интерфейсы
    • Абстрактные классы : постановка задачи
    • Решение задачи с помощью абстрактных классов
    • Интерфейсы : постановка задачи
    • Решение задачи с помощью интерфейсов
  12. Пакеты и модификаторы доступа
    • Пакеты
    • Параметр CLASSPATH
    • Модификаторы доступа
    • Инкапсуляция
  13. Графические компоненты SWING
    • AWT как предшественник SWING
    • Иерархия классов Swing
    • Графические компоненты SWING
  14. Менеджеры размещения компонентов
    • Общие сведения о менеджерах расположения
    • Стандартные менеджеры расположения
    • Вспомогательные компоненты
    • Комбинирование менеджеров расположения
  15. Графика в языке Java
    • Графический контекст и методы его работы
    • Определение цветов и шрифтов
    • Рисование на поверхности компонентов
  16. Обработка событий в Java
    • Основы механизма обработки событий
    • Классы-обработчики
    • Примеры использования классов-обработчиков
    • Внутренние классы
  17. Обработка исключительных ситуаций
    • Описание механизма обработки исключений
    • Способы обработки исключений
    • Диагностические утверждения
  18. Многопоточное программирование
    • Многопоточная модель Java
    • Создание потоков в рамках JVM: Класс Thread и интерфейс Runnable
    • Методы класса Thread
  19. Синхронизация потоков
    • Синхронизация : постановка задачи
    • Способы синхронизации потоков
    • Методы wait() и notify() класса Object
    • Способы управления жизненным циклом потока
  20. Потоки ввода-вывода
    • Иерархия потоковых классов
    • Чтение данных с консоли
    • Сериализация объектов
  21. Работа со стеком TCP / IP
    • Сетевые классы Java
    • Примеры реализации сетевых приложений : клиент
    • Примеры реализации сетевых приложений : сервер
    • Примеры реализации сетевых приложений: многопоточный сервер