java collection和iterator——对象管理

对象的生成和销毁——对象的数据位于何处?怎样控制对象的生命周期?

1、C++方式,效率优先,为了追求最大的执行速度,对象的存储空间和生命周期可以在 编写程序时确定,通过将对象至于堆栈或静态存储区域内来实现。

     这种方法将存储空间分配和释放置于优先考虑的位置,但牺牲了灵活性,因为我们必须自己控制对象的数量、生命周期和类型。在堆栈中创建的对象,编译器无法确定对 象存活的时间。


2、java方式,在堆(heap)的内存池中动态地创建对象,只有在运行时刻才知道需要多少对象。由于存储空间是在运行时刻被动态管理的,所以需要大量的时间在堆中分配存储空间(远远大于在堆栈中创建存储空间的时间)。在堆中创建的对象,编译器可以确定对象存活的时间,并自动销毁它。


collection用于管理其他对象,它持有其它对象的引用。在需要时,collection的容量将被扩充,collection对象会处理所有细节。(java提供了很多不同类型的容器,List,Map,Set)。容器本身提供了处理元素置入和取出的方式,但是单一选取元素的方法很受限制。所以我们要用Iterator去选取容器中的元素,它将容器转换成一个序列。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值