Я использую библиотеку, где абстрактный класс переопределяет конкретный метод, унаследованный от Object абстрактным методом:
public abstract class A {
@Override
public abstract boolean equals(Object obj);
}
Чтобы расширить этот класс, я должен реализовать метод equals:
public class B extends A {
@Override
public boolean equals(Object obj) {
return obj != null && obj.getClass() == B.class;
}
}
Почему абстрактный метод (A::equals) переопределяет конкретный метод (Object::equals)? Я не вижу цели этого.