Java java中的内存分析
1、类的实例化内存分析
1> 成员变量中的实例变量只在堆内存中存储,只能通过对象(实例)去访问。不能通过类名去访问
2> 带static的变量称为静态成员变量
3> java中String(字符串)类型是引用数据类型,引用数据类型,未初始化时值是null
4> 成员变量声明后,如果没有赋值,jvm会自动赋值
byte,short,int,long=0
float,double=0.0
boolean=false
char=\u0000
2、方法调用内存分析
1> 方法体中的局部变量只在栈内存中存储,局部变量声明必须赋值
2> 方法调用时,入栈。return关键字就是pop(出栈),方法结束
3、方法的递归调用内存分析
1> 递归调用的本质就是入栈执行,递归结束出栈
2> 递归方法中必须存在递归结束条件(递归出口),否则将导致栈内存溢出,程序报错,不可逆。