Встречается на собеседованиях • сегодня

Что вернет equals если сравнить два объекта один из которых ссылается на второй

При сравнении объектов через equals() результат зависит от реализации метода. По умолчанию (Object.equals()) сравнение идет по ссылке - вернет true только если это один и тот же объект.

Пример:

java
Object obj1 = new Object();
Object obj2 = obj1;

System.out.println(obj1.equals(obj2)); // true
System.out.println(obj1 == obj2); // true

text

Если же объекты разные, но переопределен equals() (как в String, Integer и др.), то результат зависит от логики сравнения:

```java
String s1 = new String("test");
String s2 = s1;

System.out.println(s1.equals(s2)); // true

Вывод: если объект ссылается на другой объект (т.е. это одна и та же ссылка), equals() вернет true (если не переопределен криво). Для разных объектов результат зависит от реализации equals().

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы