内存解析
2018-11-18 18:01
92 查看
内存区域:
程序运行过程
基本数据类型重新赋值:
开辟一个新空间来储存新的值,将原先的指针删除,将变量指向新值,程序运行结束时原先的值被回收;
引用数据类型:
例:Birth d = new Birth(1,2,2014);
栈空间先分配一个变量d,d是实例。堆空间存放new出来的Birth类型对象。变量指向对象的地址;修改一个变量所指向的对象,那么指向相同的其他变量也会改变。
栈中的数据和堆中的数据销毁并不是同步的。方法一旦结束,栈中的局部变量立即销毁,但是堆中对象不一定销毁。因为可能有其他变量也指向了这个对象,直到栈中没有变量指向堆中的对象时,它才销毁,而且还不是马上销毁,要等垃圾回收扫描时才可以被销毁。
常量池技术:
整型数据,内存中有-128 ~ 127。
String类型,内存中已经有的时候直接可以用,没有时new出来
和equals的区别:
== 是比较内存地址是否相等,equals比较的是值是否相同
Object的equals方法与“”相同。而大多数java类中都重写了equals方法,达到比较属性值的目的。
相关文章推荐
- Windows内存机制解析(二)源代码
- WINCE的内存配置-config.bib文件的解析
- 深度解析Java内存的原型
- java内存分配和String类型的深度解析
- cocos2d-x内存管理机制解析(二)
- Java并发编程与内存模型:volatile关键字解析
- Java学习-内存解析之栈内存与堆内存
- 解析Cocos2d-x中的Ref内存管理
- 程序(进程)内存分布 解析
- 进程与内存3-内存管理(解析并获取高低端内存)
- 程序(进程)内存分布 解析
- JVM内存模型及垃圾收集策略解析(1)
- JVM内存模型解析
- Linux 内存使用方法详细解析
- java内存分配和String类型的深度解析
- Android内存泄露——全解析和处理办法
- 解析IBM服务器内存技术
- linux 内存管理机制详细解析
- JVM内存模型及垃圾收集策略解析