Что напечатает следующий код?
Anonymous Quiz
40%
Код не скомпилируется
3%
Код скомпилируется, но ничего не напечатает
48%
Код скомпилируется и напечатает 3
5%
Код скомпилируется, но во время выполнения возникнет исключение
4%
Ничего из вышеперечисленного
👍15⚡3👎1🔥1
Почему хранить пароль предпочтительнее в char[]/byte[], а не в String?
• Строка в виде литерала сразу раскрывает пароль, плюс она всегда хранится в string-пуле
• byte[]/char[] возможно сбросить после использования, и удалить все ссылки на него
• Строка в виде литерала сразу раскрывает пароль, плюс она всегда хранится в string-пуле
• byte[]/char[] возможно сбросить после использования, и удалить все ссылки на него
👍29🔥1
Что произойдет при выполнении такого кода?
Anonymous Quiz
34%
Ошибка компиляции в 4-й строке
20%
Ошибка компиляции в 5-й строке
10%
Ошибка компиляции в 6-й строке
10%
Ошибка компиляции в 7-й строке
20%
Будет выведено на консоль: [1.5] [1.5]
6%
Ошибка выполнения
👍15👎7❤1🔥1
Приведите пример нарушения симметрии equals
1. Создать класс Point2D c полями x,y: double
2. Унаследовать от него класс ColoredPoint2D c доп. полем color
3. a: Point2D
4. b: ColoredPoint2D
5. a.equals(b), !b.equals(a)
1. Создать класс Point2D c полями x,y: double
2. Унаследовать от него класс ColoredPoint2D c доп. полем color
3. a: Point2D
4. b: ColoredPoint2D
5. a.equals(b), !b.equals(a)
👍13👎2🏆1
Какой будет результат?
Anonymous Quiz
14%
howl woof sniff
5%
howl howl затем ошибка
17%
howl howl sniff
9%
howl woof затем ошибка
20%
Ошибка компиляции в строке 12
35%
Ошибка компиляции в строке 13
👍25👏2
Примитивы, врапперы. Package/unpackage (boxing/unboxing).
• Типы примитивы не создаются в куче, их жизненный цикл ограничен жизненным циклом стек-фрейма
• Package — создание типа-обертки в хипе для аналогичного типа-примитива, например при объявлении аргумента как Integer, и при передаче int в качестве аргумента. Unpackage — обратная операция
• Типы примитивы не создаются в куче, их жизненный цикл ограничен жизненным циклом стек-фрейма
• Package — создание типа-обертки в хипе для аналогичного типа-примитива, например при объявлении аргумента как Integer, и при передаче int в качестве аргумента. Unpackage — обратная операция
👍13
Каким будет результат выполнения следующего кода?
Anonymous Quiz
35%
0
46%
-1
4%
Ничего из перечисленного
16%
Ошибка компиляции
👍28🔥5😁1
Сравнение по == и по equals
• Сравнение по "==" — сравнение по ссылкам
• Сравнение по «equals» — если переопределен equals, то это сравнение эквивалентности объектов по их полям, если нет — по ссылкам на объекты
• Сравнение по "==" — сравнение по ссылкам
• Сравнение по «equals» — если переопределен equals, то это сравнение эквивалентности объектов по их полям, если нет — по ссылкам на объекты
👍19🍌1
Каким будет результат компиляции и выполнения следующего кода?
Anonymous Quiz
18%
C5
20%
C
22%
ABC5
30%
ABC
9%
AB5
👍21🔥6😱5👏3
Свойства, которым должен удовлетворять equals
• Рефлексивность: a==a
• Симметричность: a==b, b==a
• Транзитивность: a==b, b==c, a==c
• Консистентность: Множественные вызовы equals должны возвращать один и тот же результат
• Рефлексивность: a==a
• Симметричность: a==b, b==a
• Транзитивность: a==b, b==c, a==c
• Консистентность: Множественные вызовы equals должны возвращать один и тот же результат
👍40❤1🔥1
Что выведет код?
Anonymous Quiz
30%
byte...
14%
long, long
32%
Byte, Byte
24%
ничего, код не скомпилируется
👍15🤔4🔥3
Отличия String/StringBuilder/StringBuffer
• String — иммутабельный байтовый массив
• StringBuilder — helper-класс для построения строк, не предоставляет гарантий синхронизации
• StringBuffer — то же, что и StringBuilder, с synchronized методами
• String — иммутабельный байтовый массив
• StringBuilder — helper-класс для построения строк, не предоставляет гарантий синхронизации
• StringBuffer — то же, что и StringBuilder, с synchronized методами
👍36👎1
Что выведет на экран следующая программа?
Anonymous Quiz
31%
true
30%
false
11%
4/2=true
28%
4/2=false
👍24👎3👏3😁2
Interface vs Abstract Class.
• Интерфейс есть средство наследования API, абстрактный класс — средство наследования реализации
• Через интерфейсы возможно осуществлять множественное наследование, абстрактный класс можно наследовать в одном экземпляре.
• В интерфейсе нет возможности определить поля и конструкторы
• Интерфейс есть средство наследования API, абстрактный класс — средство наследования реализации
• Через интерфейсы возможно осуществлять множественное наследование, абстрактный класс можно наследовать в одном экземпляре.
• В интерфейсе нет возможности определить поля и конструкторы
👍24👎7