准确的说应该是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);
}

最新文章

  1. 2014 网选 5014 Number Sequence(异或)
  2. vim中编码方式---不完整总结
  3. C#中的cookie编程
  4. activity+fragment多次切换出现页面空白问题
  5. Kettle的集群排序 2——(基于Windows)
  6. ubuntu下编译源码级QT
  7. oracle 11g 物理内存 - 此先决条件将测试系统物理内存总量是否至少为 922MB (944128.0KB)
  8. IOS_多线程_ASI_AFN_UIWebView
  9. Android开发:组播(多播)与广播
  10. 新技能get√10个PS加速小技巧让你的PS不再卡
  11. 【EMV L2】Application Usage Control
  12. day059-60 ajax初识 登录认证练习 form装饰器, form和ajax上传文件 contentType
  13. CCNA实验3.单臂路由器
  14. 地图组件上的自定义区域叠加层显示 ArcGis + GeoJson
  15. Centos下lnmp正确iptables配置规则
  16. 判断元素16种方法expected_conditions
  17. memcache 键名的命名规则以及和memcached的区别
  18. dataGridView1.DataSource,解决查询结果不从第一行显示,而是不断往表下面扩展问题
  19. IoT 通信协议
  20. AngularCLI介绍及配置文件主要参数含义解析

热门文章

  1. spring 3.X与jdk 1.8不兼容
  2. spring mvc的例子
  3. Create Your Content and Structure
  4. delphi 使用oauth的控件
  5. MAC将 /etc/sudoers文件修改错后的几种解决方法
  6. Emmet常用语法
  7. Eclipse 4.2 failed to start after TEE is installed
  8. 【WPF】UserControl 的 Load事件
  9. 发起一个NetCore技术联盟促进NetCore技术应用
  10. css 可拖拽列表