你的位置:首页 > Java教程

[Java教程][java学习笔记]java语言基础概述之内存的划分堆和栈


1.内存的划分

1.寄存器

        cpu处理

2.本地方法区

       和所在系统相关

3.方法区

4.栈内存

5.堆内存

2.栈和堆

1.栈:

     存储的都是局部变量。而且变量所属的作用域一旦结束,就释放该变量。

     栈中的变量生命周期都很短,更新速度会很快。

局部代码块:限定局部变量的生命周期。局部代码块一旦执行结束,里面的变量就会被释放。

2.堆

     存储的是数组和对象。凡是new建立的,都会存在堆里。

     特点:

  1. 每一个实体都有首地址值。
  2. 堆内存中的每一个数据都有默认初始化值,根据数据类型的不同而不同,

              整数:0,

             小数:0.0或0.0f

             char:‘\u0000’ \u代码unicode码,即空格

             对象:null

       3.  java的垃圾回收机制能自动回收堆中不再使用的实体内容

捕获