Если вы определяете интерфейс, как показано ниже
interface I1{
}
В любом разделе кода, который вы можете написать, например
I1 i1;
i1.equals(null);
Затем, откуда приходит метод equals, интерфейс также расширяет класс класса Object?, если это правда, как интерфейс может расширять класс?
Предположим, что интерфейс расширяет объект суперкласса, тогда, если вы видите, почему интерфейс коллекции, такой как Set thave, определяет метод equals() и hashCode(). Весь класс расширяет класс Object, поэтому, если вы определяете какой-либо абстрактный метод в интерфейсе, который присутствует в классе Object, тогда кто реализует интерфейс, им не нужно реализовывать этот метод. Как в нижеприведенном коде
interface I1{
String toString();
}
class A implements I1{
}
Здесь класс A не нуждается в реализации метода toString(), поскольку он присутствует в классе Object. Тогда какова цель определения этого метода в интерфейсе коллекции, поскольку они не могут заставить этот класс реализации реализовать этот метод.