日期:2011-03-22 16:17:00 来源:本站整理
程序保存在什么地方[Java编程]
本文“程序保存在什么地方[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
程序运行时,我们最好对数据保存到什么地方做到心中有数.分外要注意的是内存的分配.有六个地方都可以保存数据:
(1) 存放器.这是最快的保存区域,因为它位于和其他全部保存方法差别的地方:处理器内部.但是,存放器的数目非常有限,所以存放器是按照需求由编译器分配.我们对此没有直接的掌握权,也不大概在自己的程序里找到存放器存在的任何踪影.
(2) 仓库.驻留于通例RAM(随机拜候存储器)区域,但可通过它的“仓库指针”得到处理的直接支持.仓库指针若向下移,会成立新的内存;若向上移,则会释放那些内存.这是一种分外快、分外有效的数据保存方法,仅次于存放器.成立程序时,Java编译器必须精确地知道仓库内保存的全部数据的“长度”以及“存在时间”.这是由于它必须生成呼应的代码,以便向上和向下移动指针.这一限制无疑影响了程序的机动性,所以固然有些Java数据要保存在仓库里——分外是对象句柄,但Java对象并不放到此中.
(3) 堆.一种通例用处的内存池(也在RAM区域),此中保存了Java对象.和仓库差别,“内存堆”或“堆”(Heap)最吸惹人的地方在于编译器没必要知道要从堆里分配多少存储空间,也没必要知道存储的数据要在堆里逗留多长的时间.因此,用堆保存数据时会得到更大的机动性.要求成立一个对象时,只需用new号令编制相关的代码便可.履行这些代码时,会在堆里自动举行数据的保存.当然,为到达这种机动性,必定会付出一定的代价:在堆里分配存储空间时会花掉更长的时间!
(4) 静态存储.这儿的“静态”(Static)是指“位于固定位置”(固然也在RAM里).程序运行期间,静态存储的数据将随时等候调用.可用static关键字指出一个对象的特定元素是静态的.但Java对象本身永久都不会置入静态存储空间.
(5) 常数存储.常数值普通直接置于程序代码内部.这样做是安全的,因为它们永久都不会改变.有的常数需求严峻地保护,所以可考虑将它们置入只读存储器(ROM).
(6) 非RAM存储.若数据完好独立于一个程序之外,则程序不运行时仍可存在,并在程序的掌握范围之外.此中两个最主要的例子就是“流式对象”和“固定对象”.关于流式对象,对象会变成字节俭,普通会发给另一台机械.而关于固定对象,对象保存在磁盘中.即便程序中止运行,它们仍可保持自己的状况不变.关于这些范例的数据存储,一个分外有效的本领就是它们能存在于其他媒体中.一旦需求,乃至能将它们恢复成普通的、基于RAM的对象.Java 1.1供应了对Lightweight persistence的支持.将来的版本乃至大概供应更完好的筹划.
以上是“程序保存在什么地方[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |
- ·上一篇文章:<b>分外情形:Java的主典范</b>
- ·下一篇文章:用句柄操作对象
- ·中查找“程序保存在什么地方”更多相关内容
- ·中查找“程序保存在什么地方”更多相关内容
评论内容只代表网友观点,与本站立场无关!
评论摘要(共 0 条,得分 0 分,平均 0 分)
查看完整评论