对象引用

王朝学院·作者佚名  2016-05-28  
宽屏版  字体: |||超大  

对象引用1 public class Test {2 public static void main(String[] args) {3 Human aPerson = new Human(122); 4 }5 6 }7 class Human{8 /*constructor*/9 public Human(int h){10 this.height = h;11 }12 /*accessor */13 public int GetHeight(){14 return this.height;15 }16 /*mutator */17 public void GrowHeight(int h){18 this.height+= h;19 }20 PRivate int height;21 }

View Code

aPerson 为对象引用reference存在内存的栈中。

But!!!

在 java中,所有的(普通)对象都储存在堆上。因此,new关键字的完整含义是,在堆上创建对象。

基本类型(primitive type)的对象,比如int, double,保存在栈上。当我们声明基本类型时,不需要new。一旦声明,Java将在栈上直接存储基本类型的数据。所以,基本类型的变量名表示的是数据本身,不是引用。

引用赋值:

当我们将一个引用赋值给另一个引用时,我们实际上复制的是对象的地址。两个引用将指向同一对象。比如dummyPerson=aPerson;,将导致:

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有