黑马程序员技术交流社区

标题: JAVA 堆 方法区 静态区 final static 内存分配学习笔记 [打印本页]

作者: muziyouyou    时间: 2015-6-14 19:53
标题: JAVA 堆 方法区 静态区 final static 内存分配学习笔记
       今天再看java毕向东老师的java基础课程的时候,IO操作(对象序列化),老师讲到static的成员变量在方法区里,非静态的普通成员变量在堆当中,当时不明白啥意思,特地的查阅了一下,与大家共享。
          java程序运行时,数据会分区存放,heap、stack、method。
          堆(heap):  Java的堆是一个运行时数据区,类的对象从中分配空间。堆内存用于存放由new创建的对象和数组的引用(内存地址)。       栈(stack):  stack的区域很小,只有1M,特点是存取速度很快,所以在stack中存放的都是快速执行的任务,比如static变量,static方法,基本数据类型的数据,和对象的引用(reference).

          方法区:(method)又叫静态区,存放所有的class和静态变量,方法区存放的是整个程序中唯一的元素,如class和static变量。

          file:///c:/users/lishu_000/appdata/roaming/360se6/User Data/temp/132739_LCK9_4877.jpg







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2