黑马程序员技术交流社区
标题:
关于多态在内存中的问题
[打印本页]
作者:
罗广伟
时间:
2013-5-1 10:39
标题:
关于多态在内存中的问题
本帖最后由 罗广伟 于 2013-5-1 13:28 编辑
在多态中有
1.类型提升
例如:Cat类继承Animal类
Animal a= new Cat();
2.类型强制转换
Cat c = (Cat)a;
那么这些在内存中究竟是什么样的呢?
a和c在栈内存中区别在哪里?
作者:
郑雪
时间:
2013-5-1 10:58
a指向的是new Cat()对象,就是将new Cat()的地址赋给a,
而经过强制转换Cat c = (Cat)a;后,将a的值赋给c,
此时,c也指向new Cat()对象。
a和c不是一个引用,但指向同一个对象。
我是初学者,我的理解是这样的。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2