Java对象内存管理
编译好的Java代码要放在JVM内执行,不同的数据放在不同的区域内。具体包括:堆,栈,方法区。
堆:存放new 出来的 对象。
栈:存放方法中的局部变量。所以,它是依赖方法的调用存在的。一旦这个方法调用完毕,它(对应的“栈帧”)就会被清除。
由上可以得知,成员变量肯定存在于堆中,因为它是属于new 出来的对象的。
方法区:存放类的信息。Java程序运行的时候,Java类加载器会把class字节码装载进来,然后解析之后装入方法区。
多多交流,互帮互助
编译好的Java代码要放在JVM内执行,不同的数据放在不同的区域内。具体包括:堆,栈,方法区。
堆:存放new 出来的 对象。
栈:存放方法中的局部变量。所以,它是依赖方法的调用存在的。一旦这个方法调用完毕,它(对应的“栈帧”)就会被清除。
由上可以得知,成员变量肯定存在于堆中,因为它是属于new 出来的对象的。
方法区:存放类的信息。Java程序运行的时候,Java类加载器会把class字节码装载进来,然后解析之后装入方法区。