课程
/后端开发
/Java
/Java入门第二季 升级版
a = 1; 是把1赋给a,那么
Animal animal = dog; 是把dog的所有属性赋给animal还是别的意思?
2015-04-07
源自:Java入门第二季 升级版 10-2
正在回答
这里是强制类型转换,将animal强制转换为Dog类,并用dog2标识,属于向下类型转换,存在风险
怒放的生命012
不知道不要乱回答好吧。Dog类中可以有很多对象,dog只是其中的一个对象,Animal中也是可以有很多对象。
Animal animal = dog;
的意思是把Dog类中名为dog的对象利用向上类型转换,转换成Animal类并 用animal来标识,其实animal是在Animall类中的一个新名字,但是还是dog本身。
打个比方:你在家里是小明,属于你家里称呼,你家可能还有其他孩子。你到了你家族中会有你 族名,这名字标识你在家族的称呼,其实这两个都是你。
qq__878
int a = 6;
和上面的一个意思喽。
把dog赋值给animal,animal的类型是Animal。
应该是建立的对象animal可调用和重写dog的所有属性
举报
课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙
2 回答Dog dog2= (Dog )animal;和Animal animal=dog;的含义
2 回答Animal animal = dog 难道不是dog包含的比animal多吗?
3 回答Animal animal=new Dog()和Animal animal=dog有区别吗?
3 回答求解答Animal animal=new Dog()和Animal animal=dog的解释为什么一样
6 回答Animal obj2 = new Dog();