Комплект оценочных материалов по дисциплине
МДК. 01.04. Системное программирование по специальности
09.02.07. Информационные системы и программирование
Задания закрытого типа Задания закрытого типа на выбор правильного ответа Задание 1: Многопоточность в Java
Какой метод используется для запуска потока в Java после его создания?
a) start()
b) run()
c) execute()
Правильный ответ: a)
Компетенции (индикаторы): ОК 5
Задание 2: Синхронизация потоков
Что делает ключевое слово synchronized в методе класса в Java?
a) Запрещает создание новых потоков
b) Обеспечивает взаимное исключение при доступе к ресурсу несколькими потоками
c) Автоматически освобождает память от объекта
Правильный ответ: b)
Компетенции (индикаторы): ОК 4
Задание 3: Работа с файлами
Какой класс из пакета java.io используется для чтения текстового файла в Java?
a) FileWriter
b) BufferedReader
c) FileInputStream
Правильный ответ: b)
Компетенции (индикаторы): ОК 3
Задание 4: Сборка мусора (Garbage Collection)
Что происходит, когда JVM вызывает метод System.gc() в Java?
a) Немедленно освобождает всю память
b) Запрашивает сборку мусора, но не гарантирует её выполнение
c) Завершает все потоки программы
Правильный ответ: b)
Компетенции (индикаторы): ОК 2
Задание 5: Сетевое программирование
Какой класс используется для создания клиентского сокета в Java для TCP-соединения?
a) DatagramSocket
b) ServerSocket
c) Socket
Правильный ответ: c)
Компетенции (индикаторы): ОК 1
Задания закрытого типа на установление соответствия Задание 1: Установление соответствия (Многопоточность)
Какому методу соответствует описание: "Запускает новый поток выполнения в Java"?
a) run()
b) start()
c) join()
Правильный ответ: b)
Компетенции (индикаторы): ОК 6
Задание 2: Установление соответствия (Синхронизация потоков)
Какому ключевому слову соответствует описание: "Обеспечивает взаимное исключение для предотвращения состояния гонки в многопоточных программах"?
a) volatile
b) synchronized
c) transient
Правильный ответ: b)
Компетенции (индикаторы): ОК 7
Задание 3: Установление соответствия (Работа с файлами)
Какому классу соответствует описание: "Используется для записи текстовых данных в файл с буферизацией в Java"?
a) FileReader
b) BufferedWriter
c) FileOutputStream
Правильный ответ: b)
Компетенции (индикаторы): ОК 8
Задание 4: Установление соответствия (Сборка мусора)
Какому механизму соответствует описание: "Автоматический процесс освобождения памяти от неиспользуемых объектов в JVM"?
a) Just-In-Time компиляция
b) Garbage Collection
c) Bytecode верификация
Правильный ответ: b)
Компетенции (индикаторы): ОК 9
Задание 5: Установление соответствия (Сетевое программирование)
Какому классу соответствует описание: "Создает серверный сокет, ожидающий входящих TCP-соединений в Java"?
a) Socket
b) DatagramSocket
c) ServerSocket
Правильный ответ: c)
Компетенции (индикаторы): ПК 1.3,1.2
Задания закрытого типа на установление правильной последовательности Задание 1: Установление правильной последовательности (Многопоточность)
Правильная последовательность создания и запуска потока в Java:
Создать объект класса, реализующего Runnable или наследующего Thread.
Переопределить метод run() для выполнения кода в потоке.
Вызвать метод start() для запуска потока.
a) 1, 2, 3
b) 2, 1, 3
c) 1, 3, 2
Правильный ответ: a)
Компетенции (индикаторы): ПК 1.3,1.2
Задание 2: Установление правильной последовательности (Синхронизация потоков)
Правильная последовательность использования synchronized блока для защиты критической секции в Java:
Определить объект-монитор.
Заключить критический код в synchronized блок с этим объектом.
Потоки автоматически получают доступ по очереди.
a) 1, 2, 3
b) 2, 1, 3
c) 3, 1, 2
Правильный ответ: a)
Компетенции (индикаторы): ПК 1.3,1.2
Задание 3: Установление правильной последовательности (Работа с файлами)
Правильная последовательность чтения данных из текстового файла с использованием BufferedReader в Java:
Создать объект FileReader с путем к файлу.
Обернуть его в BufferedReader для буферизации.
Вызвать методы readLine() или read() для чтения данных.
a) 1, 2, 3
b) 2, 1, 3
c) 3, 1, 2
Правильный ответ: a)
Компетенции (индикаторы): ОК 6
Задание 4: Установление правильной последовательности (Сборка мусора)
Правильная последовательность этапов работы сборщика мусора в JVM (упрощенная модель):
Пометка неиспользуемых объектов.
Освобождение памяти от помеченных объектов.
Компактизация оставшейся памяти (опционально).
a) 1, 2, 3
b) 2, 1, 3
c) 1, 3, 2
Правильный ответ: a)
Компетенции (индикаторы): ОК 7
Задание 5: Установление правильной последовательности (Сетевое программирование)
Правильная последовательность создания TCP-сервера с использованием ServerSocket в Java:
Создать объект ServerSocket на определенном порту.
Вызвать accept() для ожидания входящего соединения.
Получить объект Socket для общения с клиентом.
a) 1, 2, 3
b) 2, 1,
Компетенции (индикаторы): ОК 6
Задания открытого типа Задания открытого типа на дополнение Задание 1: Дополнение одним словом (Многопоточность)
В Java для создания потока можно использовать класс, который реализует интерфейс ____.
a) Runnable
b) Serializable
c) Comparable
Правильный ответ: a)
Компетенции (индикаторы): ОК 9
Задание 2: Дополнение одним словом (Синхронизация потоков)
Ключевое слово ____ используется для объявления переменной, которая может быть изменена несколькими потоками без блокировок.
a) synchronized
b) volatile
c) transient
Правильный ответ: b)
Компетенции (индикаторы): ОК 10
Задание 3: Дополнение одним словом (Работа с файлами)
Класс ____ в Java предназначен для чтения байтовых данных из файла.
a) FileReader
b) FileInputStream
c) BufferedReader
Правильный ответ: b)
Компетенции (индикаторы): ОК 11
Задание 4: Дополнение одним словом (Сборка мусора)
Процесс автоматического освобождения памяти в JVM называется ____.
a) Compaction
b) Garbage Collection
c) Bytecode Verification
Правильный ответ: b)
Компетенции (индикаторы): ПК 1.2,1.3
Задание 5: Дополнение одним словом (Сетевое программирование)
Для отправки и приема UDP-пакетов в Java используется класс ____.
a) ServerSocket
b) Socket
c) DatagramSocket
Правильный ответ: c)
Компетенции (индикаторы): ПК 1.2,1.3
Задания открытого типа с кратким свободным ответом Задание 1: Открытого типа (Многопоточность)
Какой метод в классе Thread необходимо переопределить для выполнения кода в новом потоке в Java? (Ответ в одно слово)
Правильный ответ: run
Компетенции (индикаторы): ПК 1.2,1.3
Задание 2: Открытого типа (Синхронизация потоков)
Какое ключевое слово в Java используется для создания критической секции, чтобы предотвратить одновременный доступ нескольких потоков? (Ответ в одно слово)
Правильный ответ: synchronized
Компетенции (индикаторы): ПК 1.2,1.3
Задание 3: Открытого типа (Работа с файлами)
Какой класс в Java предназначен для последовательного чтения байтов из файла? (Ответ в два слова)
Правильный ответ: FileInputStream
Компетенции (индикаторы): ОК 11
Задание 4: Открытого типа (Сборка мусора)
Как называется механизм в JVM, который автоматически управляет памятью и удаляет неиспользуемые объекты? (Ответ в два слова)
Правильный ответ: Garbage Collection
Компетенции (индикаторы): ОК 10
Задание 5: Открытого типа (Сетевое программирование)
Какой класс в Java используется для установления TCP-соединения с сервером со стороны клиента? (Ответ в одно слово)
Правильный ответ: Socket
Компетенции (индикаторы): ОК 8
Задания открытого типа с развернутым ответом
Задание 1
Как называется класс в Java, который используется для работы с файловой системой?
Правильный ответ: File
Компетенции (индикаторы): ОК 4
Задание 2
Какой механизм Java позволяет выполнять код одновременно в нескольких потоках?
Правильный ответ: Многопоточность
Компетенции (индикаторы): ОК 3
Задание 3
Какой ключевой оператор используется в Java для обработки исключений?
Правильный ответ: try
Компетенции (индикаторы): ОК 2
Задание 4
Как называется интерфейс в Java, с помощью которого реализуется запуск потока?
Правильный ответ: Runnable
Компетенции (индикаторы): ОК 1
Задание 5
Какое ключевое слово в Java используется для создания нового объекта?
Правильный ответ: new
Компетенции (индикаторы): ОК 11