/**
* @ON java 8 对象创建
* @数据存储
* @寄存器
* 最快的存储区域,位于CPU内部
*
* @栈区域
* 存在于常规内存RAM(随机访问存储器)可以通过栈指针获得处理的直接支持。
* 栈指针下移分配内存,上移释放内存。快速分配内存的方法,次于寄存器。
* 创建程序时,java系统必须清楚的知道栈内保存的所有项的生命周期。
* 这种约束限制了程序的灵活性。
* 虽然在java栈上存储一些数据,特别是对象的引用,但是java对象却是保存在堆内存
*
* @堆内存
* 这是一种通用的内存池,所有java对象都存在于其中。
* 与栈内存不同,编译器不需要知道对象堆内存中的到底存在多长时间。
* 堆内存存储数据具有灵活性。
* 创建一个对象 执行 new 执行代码的时候在堆中分配内存空间
*
* @常量存储
* 常量值通常直接保存在程序代码中,他们永远不会改变。
* 只读存储器中做到保护。
*
* @非RAM存储
* 数据完全存储于程序之外,在程序未运行或者脱离程序控制依然存在。
* 序列化对象
* 将对象转换为字节流发送给另一台机器
* 持久化对象
* 对象被放置在磁盘上,程序终止数据依然存在
*/
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31