首页 > 学院 > 开发设计 > 正文

对象引用

2019-11-15 00:38:25
字体:
来源:转载
供稿:网友
对象引用
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;,将导致:


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表