为什么老师讲的向上转换是小类型到大类型的转换

来源:10-2 多态中的引用类型转换

轩辕诗垚

2016-07-28 15:36

但是却可以写Animal animal= dog  ?这不是大类型转换成小类型吗??

写回答 关注

4回答

  • KeT
    2016-07-28 19:57:11
    已采纳

    只要你记得,子类是小类型,它的超类是大类型,小类型赋值给大类型,就是向上,大类型赋值给小类型就是向下。而你给出的Animal animal= dog,就是向上转型,是小类型赋值给大类型。

    KeT 回复轩辕诗垚

    能帮助到别人,我很快乐。

    2016-07-30 08:48:53

    共 3 条回复 >

  • Ailee__
    2016-07-28 19:41:17

    Animal animal = dog,本来是想在等号右边赋一个animal,结果赋了一个dog,因为Dog继承了Animal,所以狗是动物,因此可以这样写,是dog能被称为animal的基础,所以可以说是小类型转换吧..

  • qq_影_12
    2016-07-28 16:06:25

    Animal是大类呀

    轩辕诗垚 回复qq_影_1...

    哦哦,明白了谢谢

    2016-07-29 11:04:26

    共 3 条回复 >

  • Ailee__
    2016-07-28 15:47:08

    确定dog后面没有个Animal()?

    轩辕诗垚

    他之前已经写了Dog dog=new Dog();不过这并不是我要问的啊,我问的主要是谁大谁小的问题。。

    2016-07-28 15:59:02

    共 1 条回复 >

Java入门第二季 升级版

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

530559 学习 · 6091 问题

查看课程

相似问题