- •Вопросы к коллоквиуму №1
- •«Объектно-ориентированное программирование»
- •Вопросы к коллоквиуму №2
- •«Объектно-ориентированное программирование»
- •Вопросы к экзамену
- •«Объектно-ориентированное программирование»
- •Темы курсовых проектов
- •«Объектно-ориентированное программирование»
- •Образец задания на курсовой проект (алгоритм)
- •Образец задания на курсовой проект (структура данных)
- •Критерии оценки курсового проекта
- •Комплект заданий для лабораторных работ
- •«Объектно-ориентированное программирование»
- •Банк тестовых заданий
- •Тестовый билет
- •V1: 1. Введение в ооп.
- •V2: 1.1. Общие вопросы ооп. Парадигмы и технология программирования.
- •V2: 1.2. История развития Java.
- •V2: 1.3. Java-программа. Особенности разработки и компиляции.
- •V1: 2. Основные возможности Java.
- •V2: 2.1. Общие вопросы синтаксиса Java и базовые элементы программы.
- •V2: 2.2. Типизация в Java.
- •V2: 2.3. Примитивные типы данных и операторы для работы с ними
- •V2: 2.4. Управляющие конструкции.
- •V2: 3.1. Общие вопросы ооп в Java.
- •V2: 3.2. Классы и объекты в Java.
- •V2: 3.3. Наследование.
- •V2: 3.4. Полиморфизм.
- •V1: 4. Коллекции.
- •V2: 4.1. Общие вопросы, связанные с коллекциями.
- •V2: 4.2. Массивы.
- •V2: 4.3. Строки
- •V2: 5.2. Система ввода-вывода.
Вопросы к коллоквиуму №2
по дисциплине
«Объектно-ориентированное программирование»
Члены класса.
Формат объявления метода.
Сигнатура метода.
Что для метода могут определить модификаторы.
Оператор return.
Способ передачи данных между объектами.
Локальные и глобальные переменные.
Формальные и фактические параметры.
Передача параметров по значению и по ссылке.
Передача констант через параметры.
Преимущества и недостатки использование глобальных переменных.
Модификаторы доступа.
Время существования локальных и глобальных переменных.
Области видимости локальной переменной.
Поля This и Super/
Перекрытие области видимости.
Статические члены класса.
Инициализация значения статического поля.
Объявление статического метода.
Вызов статического поля и метода.
Передача ссылочных типов в методы.
Понятия "ссылочная переменная" и "объект, связанный со ссылочной переменной".
Передача строк по ссылке.
Варианты отношений между классами.
Отношение агрегирования между классами.
Отношение зависимости между классами.
Внутренний класс.
Понятие конструктора класса.
Пример конструктора класса.
Анонимный объект.
Пример использования анонимного объекта.
Наследование.
Формат задания класса-потомка.
Иерархия классов
Терминальные классы и методы.
Переопределение методов.
Перегрузка методов.
Абстрактные классы.
Формат объявления абстрактного метода.
Наследование закрытых членов класса.
Защищенные члены класса
Методы set и get
Класс Object.
Методы класса Object.
Статическое связывание методов.
Динамическое связывание методов.
Два подхода к определению полиморфизма.
Динамические и виртуальные методы.
Понятие массива.
Статические и динамические массивы.
Массивы как объекты.
Создание и инициализация одномерного массива.
Присваивание массивов.
Массивы объектов. Пример.
Формат объявления и инициализация многомерного массива.
Регулярные и иррегулярные массивы.
Клонирование и копирование массивов.
Сравнение массивов
Особенности символьных массивов.
Понятие коллекции.
Элементы коллекции.
Пример создания списка на основе интерфейса-коллекции.
Основные классы и интерфейсы коллекций.
Общая иерархия классов-коллекций для пакета java.util.
Понятие итератора.
Пример создания и использования итератора.
Методы итератора.
Основные методы класса Collection.
Интерфейс List.
Методы интерфейса List.
Место интерфейса List в иерархии классов.
Реализации интерфейса List.
Отличие LinkedList от ArrayList.
Интерфейс Set.
Методы интерфейса Set.
Место интерфейса Set в иерархии классов.
Реализации интерфейса Set.
Понятие хэш-функции.
Особенности класса HashSet.
Особенности класса TreeSet.
Интерфейс Queue.
Методы интерфейса Queue.
Место интерфейса Queue в иерархии классов.
Реализации интерфейса Queue.
Интерфейс Map.
Объявление интерфейса Map.
Методы интерфейса Map.
Место интерфейса Map в иерархии классов.
Реализации интерфейса Map.
Устаревшие коллекции.
Классы, реализующие строки в Java/
Основное отличие java.lang.String или java.lang.StringBuffer.
Отличие char code unit от char code point.
Создание строковых литералов.
Кодировки, поддерживаемые Java.
Конструкторы строк.
Особенности конкатенации строк.
Пример переопределения метода toString.
Сравнение строк.
Как действует = = для строк.
Пул строковых литералов.
Метод intern().
Особенности индексации строк.
Методы класса java.lang.String.
Понятие регулярного выражения.
Пример использования регулярного выражения.
Методы класса java.lang.StringBuilder.
Особенности класса StringBuilder.
Понятие исключения.
Способы сообщения о возникновении ошибки.
Преимущества использования исключений.
Объект-исключение.
Бросок исключения.
Общий алгоритм обработки исключений.
Классификация исключений.
Контролируемые и не контролируемые исключения.
Наследники java.lang.Error.
Наследники java.lang.RuntimeException.
Наследники java.lang.Exception.
Объявление исключений.
Генерация исключений.
Перехват исключений.
Формат инструкции инструкции try-catch-finnaly.
Пример обработки исключения.
Основные контролируемые исключения в Java.
Основные неконтролируемые исключения в Java.
