重写的equlals方法中类型比较的问题

来源:9-9 Java 中的 Object 类 Ⅱ

小竹摇曳

2016-06-29 11:38

http://img.mukewang.com/5773421e0001ab8002960274.jpg

如图所示,首先通过getClass方法比较两个对象的类型是否相同,如果不同则返回false,那运行到下一步的时候两个对象的类型就肯定是一样的那为什么还要强制类型转换呢,不是多此一举吗?

写回答 关注

1回答

  • 慕粉3549759
    2016-06-29 14:30:13

    基类对象不能调用子类数据成员,所以要强制转换后才能调用Dog类数据成员

    小竹摇曳

    你的意思是Dog类和Object类它会判断是相同的类型是吗?所以强制类型转换是为了预防父类和子类时父类不能调用子类的成员变量,如果两个都是Dog类有没有强制类型转换也就无所谓的,我这么理解正确吗??求问。

    2016-06-29 18:04:15

    共 1 条回复 >

Java入门第二季 升级版

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

531107 学习 · 6299 问题

查看课程

相似问题