6种数据的保存
来源:互联网 发布:base64decoder 源码 编辑:程序博客网 时间:2024/05/29 09:14
程序运行时,对数据保存到哪儿要心中有数。
有6个地方可以保存数据:
1.寄存器
寄存器是CPU内的组成部分。
由于寄存器位于和其他所有保存方式不同的地方,所以他是最快的保存区域。
寄存器的数量十分有限,所以他是根据需要由编译器来分配的,所以我们没啥控制权,也不可能在程序中找到他的踪迹。
2.堆栈
(驻留于内存区域)
RAM ( random access memory )随机存取存储器。
是与CPU直接交换数据的内部存储器,也叫主存,内存。
读写速度快,常作为操作系统和程序的临时数据存储媒介。
可以通过堆栈指针来处理。
指针向下移,创建新的内存。指针向上移,释放旧的内存。
速度仅次于寄存器。
创建时,Java编译器必须准确的知道堆栈内保存数据的长度和存在的时间,这影响了程序的灵活性。
所以java对象不存在这,但是有些java数据,特别是对象句柄,要存在这里面。
3.堆(Heap)
也叫内存堆
一种常规用途的内存池,也在RAM区域,其中保存了java对象。
与堆栈不同,堆最吸引人的地方在于,编译器不必知道要从堆里分配多少内存,也不必知道存储的数据要在堆里存在多长时间。
灵活性大。适合new对象。
在堆中分配空间需要花时间。
4.静态存储
static
位于固定位置,也在RAM里
程序运行期间,静态存储的数据将随时等候调用
可以用static关键字之处一个对象的特定元素是静态的。
但是java对象本身永远都不会置入静态存储空间。
5.常数存储
常数一般直接置于程序代码内部。
这样做安全,因为永远不会变。
有的需要严格的保护,可以将他们当道只读存储器ROM中。
6.非RAM存储
完全独立于一个程序之外 -- 程序不运行的时候任然存在,并且在程序的控制范围之外。
比如:
流式对象 -- 字节流
固定对象 -- 保存在磁盘中
特点:能存在于其他媒体中。一旦需要,可以将他们恢复成普通的、基于RAM的对象
- 6种数据的保存
- 几种数据保存方式
- 几种数据持久化保存的方法!
- iOS 4种数据保存方式
- 详解javascript的【6种数据类型】
- js的typeof返回的6种数据格式
- javascript 6种数据类型
- Http状态的传递和保存 之 几种数据传递的区别和不同用途
- uPortal的两种数据源
- SQLServer 提供的25 种数据类型
- 7.0的六种数据移动方法
- 数据种数据表表结构的查询
- WindowsMobile可用的三种数据同步
- 两种数据源的配置
- JDBC--几种数据库的URL
- Tokyo Cabinet 的四种数据结构
- Tokyo Cabinet 的四种数据结构
- 几种数据规整的方法总结
- awk指令使用详解
- 2.9 Linux tty终端
- JavaScript正则表达式之最简得到字符串
- SQL SERVER还原数据库时"试图扩大物理文件时,MODIFY FILE 遇到操作系统错误 112(磁盘空间不足)"错误处理
- Android 谷歌输入法安装包
- 6种数据的保存
- innobackupex安装 详解
- 文章标题
- 判断字符串中是否存在子字符串,不区分大小写
- weak global reference table overflow (max=51200)
- TIPS_备忘
- PHP filter过滤器的基础使用
- 数据结构实验四之顺序栈
- 解决idea引入jsp标签库报500的问题