wayground logo

Free Printable Worksheets

NEW

Font size

S
M
L
XL
Worksheets

tst2467

Total questions: 34

Worksheet time: 17mins

Name
Class
Date
1.

Какое назначение метода equals() в Java?

a)

Сравнение ссылок на объекты

b)

Сравнение содержимого объектов

c)

Копирование объекта

d)

Проверка типа объекта

2.

Что произойдет, если не переопределить hashCode(), но переопределить equals()?

a)

Все работает корректно

b)

Ошибки при работе с HashMap

c)

Ошибки компиляции

d)

Ничего не произойдет

3.

Где можно определить bean в Spring?

a)

Только в XML

b)

Только в JavaConfig

c)

В XML, JavaConfig или аннотацией

d)

Только аннотацией

4.

Что делает аннотация @Transactional?

a)

Логирует транзакции

b)

Управляет транзакцией

c)

Валидирует данные

d)

Кэширует результаты

5.

Чем отличается интерфейс от абстрактного класса?

a)

Интерфейс не может иметь методов

b)

Абстрактный класс не поддерживает множественное наследование

c)

Интерфейсы медленнее

d)

Нет разницы

6.

Какой Collection в Java потокобезопасен без дополнительных обёрток?

a)

ArrayList

b)

HashMap

c)

CopyOnWriteArrayList

d)

ConcurrentHashMap

7.

Что делает метод computeIfAbsent у Map?

a)

Добавляет значение, если ключ отсутствует

b)

Удаляет ключ

c)

Обновляет существующее значение

d)

Возвращает null

8.

Что происходит при вызове Optional.empty()?

a)

Возвращает null

b)

Создаётся пустой Optional

c)

Выбрасывает исключение

d)

Создает Optional с null

9.

Для чего нужен интерфейс Runnable?

a)

Для создания потоков

b)

Для задания логики выполнения потока

c)

Для синхронизации

d)

Для мониторинга потоков

10.

Что такое "система управления базами данных"?

a)

Комплекс мероприятий и процедур, направленных на защиту данных от несанкционированного доступа

b)

Программное обеспечение для создания, управления, обслуживания и взаимодействия с базами данных

c)
  1. Программа для восстановления утраченных данных из поврежденных файлов баз данных

d)
  1. Набор данных, собранных из разных источников, объединенных в одном файле или таблице

11.

Какой паттерн обеспечивает отказоустойчивость при работе с распределенными системами и позволяет справиться с нагрузкой?

a)
  1. Паттерн Singleton

b)

Паттерн Proxy

c)

Паттерн Circuit Breaker

d)
  1. Паттерн Factory

12.

Что такое Quorum в контексте распределенных систем?

a)
  1. Набор нод, ответственных за поддержание консистентного хранения настроек системы

b)
  1. Общее количество нод, которые должны быть доступны для обработки запросов

c)

Максимальное количество нод, которые могут быть в системе

d)

Минимальное количество нод, которое должно проголосовать за обновление данных

13.

Что делает Dockerfile команда CMD?

a)
  1. Определяет команды, которые будут выполнены при создании нового контейнера

b)
  1. Определяет команды, которые будут выполнены при построении образа

c)

Создает новый слой в Docker-образе

d)

Задает команды по умолчанию при запуске контейнера

14.

Чем интеграционное тестирование отличается от модульного?

a)
  1. Модульное тестирование не требует тестовой среды, интеграционное - требует

b)

Интеграционное тестирование проверяет индивидуальные модули, модульное - взаимодействие между ними

c)

Модульное тестирование проверяет индивидуальные модули, интеграционное - взаимодействие между ними

d)
  1. Интеграционное тестирование проводится клиентами, модульное - разработчиками

15.

Каким образом можно создать поток?

a)

При помощи объекта класса Thread или ExecutorService

b)

Используя аннотацию @Thread в исходном коде

c)

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

d)

При помощи метода start() в объекте класса Object

16.

Чем отличается процесс от потока?

a)

Процесс - это объект операционной системы, поток - нет

b)

Процесс - это экземпляр выполняемой программы, поток - ее часть

c)
  1. Процесс - это последовательность выполняемых потоком операций

d)
  1. Поток - это экземпляр выполняемой программы, процесс - ее часть

17.

Для чего в стримах предназначены методы flatMap(), flatMapToInt(), flatMapToDouble(), flatMapToLong()?

a)
  1. Для разделения стрима на несколько меньших стримов

b)

Для преобразования стрима элементов в Map

c)

Для преобразования элементов одного стрима в другой стрим

d)
  1. Для преобразования стрима чисел в стрим их квадратов

18.

Что такое Stream?

a)
  1. Механизм для асинхронного программирования

b)

Тип данных для хранения потоков ввода/вывода

c)

Последовательность элементов, поддерживающая параллельные и последовательные агрегатные операции

d)
  1. Класс для работы с файлами в Java

19.

Приведите примеры основных шаблонов проектирования

a)
  1. Полиморфизм, Инкапсуляция, Наследование, Абстракция

b)

Включение, Исключение, Переход, Конвертация, Переключение

c)

Одиночка (Singleton), Наблюдатель (Observer), Фабрика (Factory), Стратегия (Strategy), Декоратор (Decorator)

20.

Что делает ключевое слово volatile?

a)

Обеспечивает видимость изменений между потоками

b)

Делает переменную атомарной

c)

Блокирует доступ другим потокам

d)

Кэширует значение

21.

Почему стоит избегать исключений в потоках?

a)

Поток завершается без логов

b)

Зависает JVM

c)

Утечка памяти

d)

Блокировка других потоков

22.

Что делает аннотация @RestController?

a)

Возвращает JSON/HTTP ответы

b)

Обрабатывает только GET запросы

c)

Управляет безопасностью

d)

Логирует запросы

23.

Чем отличается @Component от @Service?

a)

Только назначением (семантическая разница)

b)

@Service не сканируется

c)

@Component только для конфигурации

d)

Нет разницы

24.

Что возвращает метод Files.lines()?

a)

List<String>

b)

Поток строк (Stream<String>)

c)

BufferedReader

d)

String[]

25.

Что делает Optional.ofNullable()?

a)

Создаёт Optional, допускающий null

b)

Выбрасывает исключение при null

c)

Возвращает пустой Optional

d)

Игнорирует null

26.

Какой результат работы выражения "new String("abc") == "abc""?

a)

true

b)

false

c)

NullPointerException

d)

Зависит от JVM

27.

Что такое Bean Scope prototype в Spring?

a)

Один экземпляр на JVM

b)

Новый экземпляр при каждом запросе

c)

Только для singleton

d)

Только для веб-запросов

28.

Какой контейнер используется по умолчанию в Spring Boot?

a)

Tomcat

b)

Jetty

c)

Undertow

d)

Netty

29.

Что будет, если в высоконагруженное реактивное приложение добавить блокирующий вызов к БД?

a)

Вырастет потребление CPU, но приложение будет работать в прежнем режиме без задержек

b)

Вырастет задержка на запросы сервиса, образуется очередь на выполнение входящих запросов

c)

Приложение будет выдавать ошибку при обращении к блокирующей библиотеке

d)

Реактор сам распознает блокирующий код и выделит отдельные треды для него

30.

Какие операторы Reactor выполняют объединение нескольких реактивных потоков в один?

a)

combineLatest, concat, flatMap, zip, merge

b)

collect, concat, flatMap, groupBy

c)

collect, concat, flatMap, merge

d)

collect, buffer, defer, groupBy

31.

Можно ли что-то улучшить?

a)

Добавить asSequence перед вызовом .map {it.employees}

b)

Заменить функции высшего порядка (map, flatten, first) на циклы for

c)

Удалить вызов flatten

d)

Улучшения не требуются

32.

Что делает Dockerfile команда CMD?

a)

Определяет команды, которые будут выполнены при создании нового контейнера

b)

Определяет команды, которые будут выполнены при построении образа

c)

Задает переменные окружения для контейнера

d)

Создает новый слой в Docker-образе

33.

Что такое «транзакция»?

a)

Последовательность операций с данными, которая представляет собой единую единицу работы

b)

Процедура перевода средств между банковскими счетами

c)

Запрос к базе данных, который создаёт, изменяет или удаляет данные

d)

Запрос к базе данных, который использует в своей работе сразу несколько таблиц

34.

Что такое ordering, as-if-serial semantics, sequential consistency, visibility, atomicity, happens-before, mutual exclusion, safe publication?

a)

Концепции, определяющие поведение многопоточных программ

b)

Методы оптимизации баз данных, направленные на улучшение производительности параллельных запросов

c)

Функции языка программирования Java, используемые для управления памятью и процессами

d)

Стандарты кодирования в Java, обеспечивающие безопасность и надёжность программ