黑马程序员技术交流社区
标题:
向上引用会丢失信息吗?
[打印本页]
作者:
weity
时间:
2014-8-13 09:01
标题:
向上引用会丢失信息吗?
有下面一段代码:
ArrayList al = new ArrayList();
al.add("java01");
Iterater it = al.iterater();
Object obj=it.next();
复制代码
obj并不完全等于"java01",
但是打印的时候,还是可以输出"java01"
但是应该有其他信息丢失了吧。,
作者:
马嘉
时间:
2014-8-13 09:21
不是,obj就是一个对象,相当于next()得到的这个值得载体,为什么用object呢,就是能够接受所有对象
如果是对对象进行向上转型,变成Opject,那么他的特有功能就不能使用了,必须在做向下转型的动作
作者:
陶圣虎
时间:
2014-8-13 10:56
向下转,前面要加String
作者:
申航航
时间:
2014-8-13 12:02
没丢什么信息吧,只有过是向上转型了而已,父类的引用还是指向子类的对象实体啊
作者:
nadax
时间:
2014-8-13 12:20
你使用迭代器进行访问,我的理解是 ArrayList开辟好内存空间后,使用迭代器来访问具体的内存空间,向上引用也是指向的这个内存空间,只要这个内存空间的值没有发生变动,是不会出现丢失的。 不知道理解正确否,如有错误请指正。
作者:
﹑淼
时间:
2014-8-13 12:30
不会,这就是个多态。
作者:
董帅军
时间:
2014-8-13 17:30
不是,我感觉就是他特有的一些功能就不能用了啊
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2