Java 8 默认方法接口覆盖对象等于方法

Java 8 default method interface override Object equals method

public interface Table<T> {

    @Overrride
    default boolean equals(Object other) {
        //do something and return true/false
    }
}

为什么上面的代码会出现"java: default method equals in interface Table overrides a member of java.lang.Object"的编译错误?我们不能使用接口默认方法覆盖 hashCode 和 equals 方法吗,大概我在同一个接口中有方法来确定实现这个接口的对象是否相等?

没有。 类 with implementations always win over default methods, so having a default hashCode or equals can never be invoked 因此被禁止。