虚拟内存总体分五大区域,栈区(堆栈),堆区(托管堆),常量,静态(静态未初始化区,和静态初始化区)其他区域
*
* 栈区:有计算机虚拟内存自动进行释放管理,战区的存储方式为先进后出,用于分配值类型,站由操作系统进行管理,不受GC(垃圾回收机制)管理,当值类型不在其作用域,其所占的内存自动释放,站的执行效率为最高
*
* 堆区;用于分配小对象实例(85000),所谓小对象就是小于85000字节的实例对象
* GC堆分三代垃圾管理进行管理,当GC操作时(垃圾回收的时候),垃圾收集器会对GC堆进行压缩回收
* 原理有点类似IOS中的autorelease(自动释放池)
*
* 大对象堆:(large object heap):大对象堆就是指大小超过85000字节的实例对象,大对象分配在LOH上
* 不受GC管理,不会被压缩,只有在完全Gc回收时才会回收
*
* Ps:
* 栈的分配是最高位--》低位进行扩展
* 堆的分陪是最低位-->高位进行管理
*
* 值类型参数与引用参数的本质,之参数是对栈中数值进行拷贝,拷贝出来的数值相当于之前数据的副本
* 引用类型是对栈中数据的引用,当之参数为莫对象的引用类型时,可以改变该对象的某些值
* 但是不能将值变成新的对象