码迷,mamicode.com
首页 > 其他好文 > 详细

对象引用

时间:2015-06-19 18:40:47      阅读:101      评论:0      收藏:0      [点我收藏+]

标签:

技术分享
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;,将导致:

技术分享

   

   

   

对象引用

标签:

原文地址:http://www.cnblogs.com/pinkfloyd/p/4589394.html

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