#java #junit
JUnit: в чем отличие assertSame(Object, Object) от assertEquals(Object, Object) именно на параметрах типа Object?
Ответы
Ответ 1
assertEquals() использует метод equals(), если он определен. Таким образом, можно использовать свой принцип сравнения объектов. Если он не определен - работает как assertSame(). assertSame() просто сравнивает объекты при помощи оператора ==, то есть проверяет, являются ли параметры ссылками на один и тот же объект. Отсюда следует, что для параметров типа Object разницы нет.Ответ 2
Если runtime-типы обоих параметров - java.lang.Object, то ничем.
Комментариев нет:
Отправить комментарий