java 内存分配

来源:互联网 发布:乌鱼子淘宝的价格 编辑:程序博客网 时间:2024/06/05 14:57



一、方法区:

类加载器在加载类文件时,从中提取了类信息。保存在一个成为方法区的内存逻辑区中。

类信息包括:

(1)非静态部分:包括非静态的方法(包括构造方法)

(2)静态部分(除了非静态部分包含的非静态方法、构造方法和非静态成员变量外有关于类的信息):

①静态成员变量

②静态方法

③静态代码块

④构造代码块

  ……

二、栈内存:

保存局部变量的值:

①用来保存基本数据类型的值

②保存类的实例,即堆内存中对象的引用(地址)

三、堆内存:

用来存放动态产生的数据,比如new出来的对象。注意创建出来的对象只包含属于各自的成员变量,并不包括成员方法。因为同一个类的对象拥有各自的成员变量,存储在各自的堆中,但是他们共享该类的方法,该类的方法存在于方法区中。




0 0