问答详情
源自:10-2 多态中的引用类型转换

Animal animal = dog;的含义

a = 1;   是把1赋给a,那么

Animal animal = dog;  是把dog的所有属性赋给animal还是别的意思?

提问者:小安琪最无敌 2015-04-07 20:34

个回答

  • 无敌的大鹏鸟
    2015-08-03 12:27:52

    这里是强制类型转换,将animal强制转换为Dog类,并用dog2标识,属于向下类型转换,存在风险

  • 无敌的大鹏鸟
    2015-07-30 12:23:54

    不知道不要乱回答好吧。Dog类中可以有很多对象,dog只是其中的一个对象,Animal中也是可以有很多对象。

    Animal animal = dog;

    的意思是把Dog类中名为dog的对象利用向上类型转换,转换成Animal类并 用animal来标识,其实animal是在Animall类中的一个新名字,但是还是dog本身。

    打个比方:你在家里是小明,属于你家里称呼,你家可能还有其他孩子。你到了你家族中会有你 族名,这名字标识你在家族的称呼,其实这两个都是你。

  • 放学路上的小学生
    2015-05-09 12:29:49

    int  a = 6;

    和上面的一个意思喽。

    把dog赋值给animal,animal的类型是Animal。


  • LAN蓝
    2015-04-07 20:46:28

    应该是建立的对象animal可调用和重写dog的所有属性