您的位置:首页 > 编程语言 > Java开发

《java编程思想》学习之对象的存储

2015-09-15 19:23 218 查看
开始看《java编程思想》,今天看了前三章,简单的做下总结。

一、java与C++中对象的不同

由于C++的效率较高,为此程序员需要在编程时确定对象的存储空间和生命周期(手动分配空间以及释放空间)。所以C++中对象存储在堆栈或静态存储区中。

而java中对象的引用在堆栈中,对象实际存储在堆空间中。这样可以在程序运行时自动创建对象以及自动回收,代价是在堆中分配空间远远大于在栈中分配空间的时间。

二、数据存储的位置

1、寄存器

寄存器是最快的存储区,java中不能对寄存器直接控制。

2、堆栈

位于RAM中,通过堆栈指针获取值。速度仅次于寄存器,创建程序时系统必须知道存储在堆栈内所有数据的生命周期,因此限制了灵活性。

3、堆

灵活性高,代价是花费的时间远多于堆栈。

4、常量存储

5、非RAM存储

常见的是流对象,存储在磁盘上,网络上的数据等等
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: