java程序中的引用型变量在内存中是如何分配的

来源:互联网 发布:淘宝卡价格刷单 编辑:程序博客网 时间:2024/06/05 19:55

我们都知道对于基本类型变量在定义(声明)的时候,系统就直接给该变量分配空间,因此程序中可以直接操作。

例如:

  int  a;//声明变量a同时系统分配给a空间

  a=12;

引用型变量在声明时,只给该变量分配引用空间,而数据空间却未分配。因此引用型变量声明后不能直接引用,下列第二条语句时错误的;

MyDate  today;

today.day=14;//错误,因为today对象没有分配空间

。。。。。

引用型变量在声明后必须通过实例化开辟数据空间,才能对变量说指向的对象进行访问。

例如:

1       MyDate today;

2       today=new MyDate();

那现在我们来分析这个对象today及其成员变量在内存中是如何分配的?

例如:MyDate today=new MyDate ();

          我们知道对象是放在堆里面的,而因引用变量today是放在zhai里面的;

          那麽关于这个成员变量是在调用构造方法后分配,还是之前内存分配已经