对象内存管理
1)堆: 存储使用new关键字所创建的对象(包含成员变量)
1.1)成员变量的生命周期(创建对象时存在堆中,对象被回收时随之消失);
1.2)没有任何引用指向的对象为垃圾;垃圾回收器不定时清扫垃圾;回收过程是透明的,并不一定一发现垃圾就回收。可调 用System.gc()来回收处理;
2)栈:正在调用方法的局部变量
2.1)调用方法时,在栈中为该方法分配一块对应的栈帧,栈帧中存储方法中的所有局部变量,方法执行结束时,栈帧被消除, 局部变量随之消失;
2.2)局部变量的生命周期
调用方法时存在栈中,方法调用结束时与栈帧一并消失;
3)方法区:用于存储字节码文件.class及方法
3.1)方法只有一份,通过this区分自己的对象;