java内存数据管理
2024-10-11 23:34:19
准确的说应该是java8以前的内存管理方式
区别在永久代(方法区)上
public class RamManager {
//1.a存储于永久代
public static int a =1;
private String str;
private int x;
private AA aaa;
// method_1方法位于栈中
// temp1保存的是引用地址,在栈中
public void method_1(String temp1) {
// temp1将引用地址赋给this.str,this引用在栈中,this实例在堆中,this.str也在堆中,保存了temp1的值,为字符串"aaa"的地址
this.str = temp1;
// this.x在堆中
this.x = 1;
// b在栈中
int b = 2;
// attr变量在栈中,new int实例在堆中
int[] attr = new int[10];
attr[0] = 1;
// aa变量在栈中,实例AA在堆中
AA aa = new AA();
// this.aaa在堆中,保存了aa变量的地址
this.aaa = aa;
} // main方法位于栈中
public static void main(String[] args) throws Exception{
// ramManager变量在栈中创建,new Manager实例在堆中创建
RamManager ramManager = new RamManager();
// string变量在栈中,保存的"aaa"的地址,"aaa"在常量池中
String string = "aaa";
ramManager.method_1(string);
}
最新文章
- 2014 网选 5014 Number Sequence(异或)
- vim中编码方式---不完整总结
- C#中的cookie编程
- activity+fragment多次切换出现页面空白问题
- Kettle的集群排序 2——(基于Windows)
- ubuntu下编译源码级QT
- oracle 11g 物理内存 - 此先决条件将测试系统物理内存总量是否至少为 922MB (944128.0KB)
- IOS_多线程_ASI_AFN_UIWebView
- Android开发:组播(多播)与广播
- 新技能get√10个PS加速小技巧让你的PS不再卡
- 【EMV L2】Application Usage Control
- day059-60 ajax初识 登录认证练习 form装饰器, form和ajax上传文件 contentType
- CCNA实验3.单臂路由器
- 地图组件上的自定义区域叠加层显示 ArcGis + GeoJson
- Centos下lnmp正确iptables配置规则
- 判断元素16种方法expected_conditions
- memcache 键名的命名规则以及和memcached的区别
- dataGridView1.DataSource,解决查询结果不从第一行显示,而是不断往表下面扩展问题
- IoT 通信协议
- AngularCLI介绍及配置文件主要参数含义解析