java对象的内存
来源:互联网 发布:hadoop java获取文件 编辑:程序博客网 时间:2024/06/05 11:57
假定有如下一个类
package com.oop;/** * 对象 * */public class Car { private String abc; public void run() { System.out.println("这是方法"); }}
这有一个测试main方法
package com.oop;/* * 这个测试mian方法来创建一个Car类 */public class Test { public static void main(String[] args) { @SuppressWarnings("unused") Car car = new Car(); car.run(); }}
程序开始运行时
main 方法会进行压栈(通俗来说就是在栈的最下面)
其中会创建Car对象的引用(这个引用会产生一个指向堆中的内存地址)
而在堆中的内存地址所在的位置会创建一个Car对象(其中成员变量也在堆中创建)
执行方法run()会在栈中产生,方法执行完成则释放(出栈)
main方法结束(出栈)其中Car对象的引用也会被释放
注意:引用释放并不代表创建的对象也被释放(这个时候对象在堆中变成垃圾)
最终这个垃圾被java的垃圾回收机制回收
阅读全文
0 0
- java对象的内存
- Java对象的内存占用
- Java对象的内存模型
- java对象的内存布局
- Java对象的内存布局
- java对象的内存布局
- java内存,对象的创建
- Java对象的内存控制
- java对象的内存布局
- java对象内存的存储
- Java对象的内存模型
- 如何计算java对象占用的内存
- 如何计算java对象占用的内存
- 如何计算java对象占用的内存
- 计算Java对象占用的内存
- 如何计算java对象占用的内存
- Java内存对象的逃逸分析
- 如何计算java对象占用的内存
- Github桌面端程序上传代码
- [codeforces] 877D. Olya and Energy Drinks (BFS)
- 使用android--建立第一个APP程序
- 单链表基本操作的C语言实现(链式存储结构)
- dict
- java对象的内存
- Python 编码规范
- Javascript——简介
- [codeforces] 877E. Danil and a Part-time Job(DFS序+线段树)
- setInterval图片缓冲(js)
- 数据结构--线性表C实现
- 试试写个博客
- 升级nodejs, npm到某一版本
- php实现兼容Unicode文字的字符串大小写转换strtolower()和strtoupper()