84/85java中内存划分和数组的内存图

java内存的划分

java 的内存需要划分成五个部分:

 

1.栈(stack):存放的都是方法中的局部变量。方法的运行一定要在栈当中运行。

 

局部变量:方法的参数,或者是方法{}内部的变量

 

作用域:一旦超出作用域,立刻从栈内存当中消失。

 

2.堆(Heap):凡是new出来的东西,都在堆当中。

 

堆内存里面的东西都有一个地址16进制。

 

堆内存里面的数据,都有默认值规则:

 

    如果是整数     默认为0

 

    如果是浮点数    默认为0.0

 

    如果是字符     默认为‘\u0000’

 

    如果是布尔     默认为false

 

    如果是引用类型   默认为null

 

3.方法区(Method Area):储存.class相关信息,包含方法的信息

 

4.本地的方法栈(Native Method Stack):与操作系统相关

 

5.寄存器(pc Reguster):与CPU相关

数组内存图

 

 

posted @ 2022-07-03 19:31  ja不会va  阅读(29)  评论(0)    收藏  举报