首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

:java equals方法

2013-02-24 
高手请进:java equals方法如题:在继承代码中如何写equals()使该方法满足以下规范:1 自反性 x.equals(x) 为

高手请进:java equals方法
如题:在继承代码中如何写equals()使该方法满足以下规范:

1 自反性 x.equals(x) 为true

2 对称性 x.equals(y)==y.equals(x)

3 传递性 x.equals(y) y.equals(z)则x.equals(z) java equals
[解决办法]

引用:
引用:前提不满足了,比较的两个对象一个是ColorPoint,一个是Point,而前者比较时又必须考虑color因素,对称性肯定满足不了了

effect java中提到过吧是的,但是equals()方法并不是只有相同类型才能比较,毕竟他的参数是object

但这些特性(反身,对称,传递等)是equals的默认表现,也就是当equals是Object的方法,且其参数也是Object时才可拥有,因为比较双方都是Object,是同一个type,一旦被覆盖,类型不一致的比较双方虽然仍可比较是否相等,但原来的特性恐将不保。

热点排行