Java 8默认方法接口覆盖Object equals方法

时间:2015-01-19 06:46:11

标签: java java-8 default-method

public interface Table<T> {

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

为什么上面的代码有编译错误&#34; java:默认方法equals in interface Table覆盖了java.lang.Object的成员&#34;?我们不能使用接口默认方法覆盖hashCode和equals方法,大概我在同一个接口中有方法来确定实现这个接口的对象是否相等?

1 个答案:

答案 0 :(得分:12)

没有。具有实现的类总是胜过默认方法,因此永远不能调用默认的hashCodeequals,因此禁止使用。