黑马程序员技术交流社区

标题: 集合类问题,求解 [打印本页]

作者: 冯国强    时间: 2013-11-5 01:03
标题: 集合类问题,求解
Person p=new Person();
ArrayList al=new ArrayList();
al.add(p);
上述代码执行中,内存加载情况是如何的?是否是将Person对象添加到al集合类中了吗?

作者: 胡志翔    时间: 2013-11-5 08:55
自己画的,画的不好,不要介意

作者: 涐扪①起奮乧    时间: 2013-11-5 17:25
Person p=new Person();这句话是创建person对象,存放在堆内存中,栈内存中就有了一p
ArrayList al=new ArrayList();这句话是创建一个集合容器,使用Collection接口的子类,顺便说一下,集合中存放的都是对象的引用
所以当程序执行到al.add(p);创建的集合容器就把你创建的person对象的地址存放在了这个容器里面,同时al也在栈内存里面。图如一楼所画。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2