Leu_Z
2015-02-26 12:52
Dog2和Dog不是已经通过if(getClass()!=obj.getClass())比较出类型相同了嘛,为什么下面还要把Dog2类型转换成Dog类型?Dog other =(Dog) obj;搞不清楚他比较的类型是什么意思,是在比较两个对象所属的类是否是同一个?
就好比我有一个动物的类,和一个人的类,比较的时候肯定不是同一个类啊,这是比较类型的目的
其实代码中在equals方法中传入的参数是object类型的,所以需要进行强转才能真正按相同类型进行比较,否则,是按一个object类型对象和一个原始对象的方式,是无法继续比较属性值的
2015-02-27 11:49:03
共 1 条回复 >
Java入门第二季 升级版
530655 学习 · 6091 问题
相似问题
回答 1
回答 2
回答 3