java内存

java 内存管理:java的内存由JVM管理

                       堆:用来存储所有new 出来的对象,全部放进堆里。并且成员变量(类中)也在堆里(默认值为0)。
                               成员变量的生命周期:创建对象时存在堆中,对象被回收时,成员变量一并消失 

                              垃圾回收器(GC):GC会不定时到堆中查看,看到没有任何引用所指向的对象。看到垃圾自动回收。并不是GC                                                                看到所有垃圾就回收,弱想让它快一些收,可以调用System.gc();

                              内存泄漏:不在使用的对象没有被及时回收  当对象不再使用,应及时将引用为null

                      栈:1.用于存储正在调用中的方法的局部变量(参数列表里的变量和方法里的变量)

                             2.调用方法时,在栈中为该方法分配一块对应的栈桢,栈帧中包含所有的局部变量,方法调用结束时,栈帧消                                     失,局部变量一并消失

                             3.局部变量的生命周期 : 调用方法时存在栈中,方法结束栈帧消失,栈帧消失,局部变量一并消失

                             4.栈中有引用,引用存储的是地址, 指向堆中的对象。如果 引用为null。我们无法通过引用地址访问,则这个                                      对象为垃圾但是栈中不一定存储引用,有可能堆中存储引用 如对象数组:enetity[0] 为引用, 引用中为对                                          象,也存在于堆中

              方法区:方法区里专门去存放类的信息(.class) JVM类加载器装载类 方法也一并在方法区,一个类只被加载一次    方法                              只有一份所有对象共享一个方法。 用this 区分 那个对象调用的方法

                            成员变量随着对象生成有默认值,局部变量生成没有初始化没有默认值


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值