Win*_*ins 13 java java-8 default-method
public interface Table<T> {
@Overrride
default boolean equals(Object other) {
//do something and return true/false
}
}
Run Code Online (Sandbox Code Playgroud)
为什么上面的代码有编译错误"java:默认方法在接口表中等于覆盖java.lang.Object的成员"?我们不能使用接口默认方法覆盖hashCode和equals方法,大概我在同一个接口中有方法来确定实现这个接口的对象是否相等?
Ste*_*ker 12
具有实现的类总是胜过默认方法,因此具有默认值hashCode或equals永远不会被调用,因此被禁止.
| 归档时间: |
|
| 查看次数: |
4858 次 |
| 最近记录: |