Метод hashCode() необходим для вычисления хэш кода переданного в качестве входного параметра объекта. В Java это целое число, в более широком смыле — битовая строка фиксированной длины, полученная из массива произвольной длины. Этот метод реализован таким образом, что для одного и того же входного объекта, хэш код всегда будет одинаковым. Следует понимать, что в Java множество возможных хэш кодов ограничено типом int, а множество объектов ничем не ограничено. Из-за этого, вполне возможна ситуация, что хэш коды разных объектов могут совпасть.
Если хэш коды разные, то и объекты гарантированно разные;
если хэш коды равны, то объекты могут не обязательно равны.
  Если хэш коды разные, то и объекты гарантированно разные;
если хэш коды равны, то объекты могут не обязательно равны.
Каков будет результат выполнения метода main у класса Main?
  Anonymous Quiz
    4%
    4
      
    15%
    5
      
    80%
    6
      
    2%
    Не знаю
      
    Каким будет результат выполнения кода:
  Anonymous Quiz
    2%
    null
      
    6%
    life
      
    13%
    universe
      
    67%
    everything
      
    10%
    Произойдет ошибка компиляции
      
    1%
    Произойдет ошибка времени выполнения
      
    1%
    Не знаю
      
    Что напечатает следующий фрагмент кода:
  Anonymous Quiz
    5%
    catchfinally
      
    1%
    catch
      
    10%
    Ничего не напечатает
      
    84%
    finally
      
    1%
    Не знаю
      
    Forwarded from BackendQuiz - задачи с собеседований по бэкенду
Все перечисленные ключевые слова относятся к DML (Data Manipulation Language): 
INSERT, CREATE, DELETE, UPDATE.
  INSERT, CREATE, DELETE, UPDATE.
Anonymous Quiz
    54%
    Да
      
    42%
    Нет
      
    4%
    Не знаю
      
    Монитор, мьютекс (mutex) – это средство обеспечения контроля за доступом к ресурсу. У монитора может быть максимум один владелец в каждый текущий момент времени. Следовательно, если кто-то использует ресурс и захватил монитор для обеспечения единоличного доступа, то другой, желающий использовать тот же ресурс, должен подождать освобождения монитора, захватить его и только потом начать использовать ресурс.
Удобно представлять монитор как id захватившего его объекта. Если этот id равен 0 – ресурс свободен. Если не 0 – ресурс занят. Можно встать в очередь и ждать его освобождения.
В Java у каждого экземпляра объекта есть монитор, который контролируется непосредственно виртуальной машиной. Используется он так: любой нестатический synchronized-метод при своем вызове прежде всего пытается захватить монитор того объекта, у которого он вызван (на который он может сослаться как на this). Если это удалось – метод исполняется. Если нет – поток останавливается и ждет, пока монитор будет отпущен.
  Удобно представлять монитор как 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%
    Не знаю
      
    👍1
  Какой результат выполнения указанной выше строчки?
  Anonymous Quiz
    60%
    Значением переменной i станет отрицательное число
      
    7%
    Выбросится OperationNotSupportedException
      
    3%
    Результат не определён
      
    5%
    Значением переменной i станет NaN константа
      
    20%
    Выбросится ArithmeticException
      
    5%
    Не знаю
      
    Какой будет результат компиляции и выполнения следующего кода?
  Anonymous Quiz
    6%
    127
      
    33%
    2147483647
      
    4%
    Ошибка времени выполнения
      
    52%
    Ошибка компиляции
      
    4%
    Не знаю
      
    Модификатор final:
➖Класс не может иметь наследников;
➖Метод не может быть переопределен в классах-наследниках;
➖Поле не может изменить свое значение после инициализации;
➖Локальные переменные не могут быть изменены после присвоения им значения;
➖Параметры методов не могут изменять своё значение внутри метода.
Оператор finally гарантирует, что определенный в нём участок кода будет выполнен независимо от того, какие исключения были перехвачены в блоке try-catch.
Метод finalize() вызывается перед тем как сборщик мусора будет проводить удаление объекта.
  ➖Класс не может иметь наследников;
➖Метод не может быть переопределен в классах-наследниках;
➖Поле не может изменить свое значение после инициализации;
➖Локальные переменные не могут быть изменены после присвоения им значения;
➖Параметры методов не могут изменять своё значение внутри метода.
Оператор finally гарантирует, что определенный в нём участок кода будет выполнен независимо от того, какие исключения были перехвачены в блоке try-catch.
Метод finalize() вызывается перед тем как сборщик мусора будет проводить удаление объекта.
Что произойдет в результате компиляции и выполнения программы:
  Anonymous Quiz
    2%
    Ошибка времени выполнения
      
    13%
    /u000a /u000c /u000d 1 2 3 one three two
      
    60%
    one two three /u000a /u000d /u000c 1 2 3
      
    3%
    3 2 two 1 /u000a one three /u000c /u000d
      
    9%
    Ошибка компиляции
      
    12%
    Ничего из выше перечисленного
      
    