Java задачи с собеседований
6.27K subscribers
590 photos
6 videos
19 files
246 links
Задачи, тесты и теоретические вопросы по JAVA.

Репозиторий: https://github.com/proghub-official/java-interview
Прислать задачу/вопрос в дар: @cyberJohnny
Сотрудничество: @cyberJohnny
加入频道
Какой результат работы программы?
Что произойдет после компиляции кода и запуска программы без аргументов:
Метод hashCode() необходим для вычисления хэш кода переданного в качестве входного параметра объекта. В Java это целое число, в более широком смыле — битовая строка фиксированной длины, полученная из массива произвольной длины. Этот метод реализован таким образом, что для одного и того же входного объекта, хэш код всегда будет одинаковым. Следует понимать, что в Java множество возможных хэш кодов ограничено типом int, а множество объектов ничем не ограничено. Из-за этого, вполне возможна ситуация, что хэш коды разных объектов могут совпасть.

Если хэш коды разные, то и объекты гарантированно разные;
если хэш коды равны, то объекты могут не обязательно равны.
Каков будет результат выполнения метода main у класса Main?
Каков будет результат выполнения метода main у класса Main?
Anonymous Quiz
4%
4
15%
5
80%
6
2%
Не знаю
Каким будет результат выполнения кода:
Что напечатает следующий фрагмент кода:
Что напечатает следующий фрагмент кода:
Anonymous Quiz
5%
catchfinally
1%
catch
10%
Ничего не напечатает
84%
finally
1%
Не знаю
Все перечисленные ключевые слова относятся к DML (Data Manipulation Language):
INSERT, CREATE, DELETE, UPDATE.
Anonymous Quiz
54%
Да
42%
Нет
4%
Не знаю
Монитор, мьютекс (mutex) – это средство обеспечения контроля за доступом к ресурсу. У монитора может быть максимум один владелец в каждый текущий момент времени. Следовательно, если кто-то использует ресурс и захватил монитор для обеспечения единоличного доступа, то другой, желающий использовать тот же ресурс, должен подождать освобождения монитора, захватить его и только потом начать использовать ресурс.

Удобно представлять монитор как id захватившего его объекта. Если этот id равен 0 – ресурс свободен. Если не 0 – ресурс занят. Можно встать в очередь и ждать его освобождения.

В Java у каждого экземпляра объекта есть монитор, который контролируется непосредственно виртуальной машиной. Используется он так: любой нестатический synchronized-метод при своем вызове прежде всего пытается захватить монитор того объекта, у которого он вызван (на который он может сослаться как на this). Если это удалось – метод исполняется. Если нет – поток останавливается и ждет, пока монитор будет отпущен.
Какой будет результат компиляции и выполнения данного кода?
Какой будет результат компиляции и выполнения данного кода?
Anonymous Quiz
6%
2, 2
32%
2, 2.0
14%
0, 0
7%
1, 1
24%
Ошибка компиляции
3%
Ошибка выполнения
14%
Не знаю
Какой результат выполнения указанной выше строчки?
Какой будет результат компиляции и выполнения следующего кода?