码迷,mamicode.com
首页 > 编程语言 > 详细

JAVA变量在内存中的分配

时间:2015-08-30 17:34:42      阅读:189      评论:0      收藏:0      [点我收藏+]

标签:

变量是程序中最基本的存储单元,从本质上讲,变量其实是内存中的一小块区域。所以要为其分配一定的存储空间。

变量的类型

按数据类型:

  1. 基本数据类型
  2. 引用数据类型

按声明的位置:

  1. 局部变量
  2. 成员变量

程序在计算机内存的分布:


技术分享

栈区:

        由编译器自动分配释放,主要存放Java程序运行时所需的局部变量、方法的参数、对象的引用以及中间运算结果等数据。其操作方式类似于数据结构的栈。

堆区:

        不是系统为程序自动分配的,是程序执行过程中有new语句为变量分配的,主要存放Java程序运行时创建的所有引用类型,即使指向堆空间的指针变量消失,new语句分配的空间也不会消失。它与数据结构中的堆不一样,但分配方式类似于链表。

代码区:

        主要存放Java的代码,程序结束由系统释放。

数据区:

        主要存放静态变量及全局变量,程序结束由系统释放。
结合实例来看:
public class Test{
	
	public static void main(String args[]){
		
		Test test = new Test();
		int Date = 9;
		BirthDate d1 = new BirthDate(7,7,1970)
	}
}


技术分享

总结:

       之前我们在讲设计模式的讲过这方面的内容,但是当时不是怎么理解,现在正好看J2SE,而且C++程序设计中也有讲过,现在将他们结合起来,简单理解一下,再重新听视频的讲解,简单多了,所以知识是再不断的重复中学习的。

版权声明:本文为博主原创文章,未经博主允许不得转载。

JAVA变量在内存中的分配

标签:

原文地址:http://blog.csdn.net/wangnayu/article/details/48105487

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!