既然类型相同了,为什么还要强制转换成Dog类型呢

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

慕斯0302362

2018-03-11 21:13

既然类型相同了,为什么还要强制转换成Dog类型呢

写回答 关注

2回答

  • 燃到盛夏
    2018-08-09 23:27:11

    楼上都说错了

    很简单

    JAVA是强类型语言    1 不等于    1.0    

    这里形参给的是    Object    obj

    必须转化才能用    

    拿 Object    和    Dog    比是不对的

    要么形参就传递    (Dog    obj)    不要传    (Object    obj)

    慕圣8425...

    (getClass( Object ) != obj.getClass(Dog))返回的不是true吗?返回true之后,不是就执行下面的return false语句,然后结束吗?

    2020-05-29 15:14:51

    共 1 条回复 >

  • 孤僻成瘾
    2018-07-04 16:36:36

    我的理解,动物分成狗和猫,他们都有体重,体温,大小等属性(成员变量),你用getClass比较他们都有相同的属性,可以判断他们属于动物类。但是对于猫拥有狗的身高,狗拥有猫的身高可能就反常了,即使身高值一样也会报错。强制转化大概为了统一标准吧,大概是美元转化成人名币来买东西

Java入门第二季 升级版

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

530714 学习 · 6091 问题

查看课程

相似问题