A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 327037419 中级黑马   /  2015-9-6 16:19  /  324 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

引用类型的变量 java 中 是什么啊,具体什么样的。
谁举个例子被,啥东西是引用类的变量

3 个回复

倒序浏览
引用类型和基本类型最区别就是在函数的传值中,引用类型是引用传递(就是按地址传递),基本类型是按值传递,除了基本数据类型之外,其他都是引用传递,包装类也是引用传递(但是要注意自动装箱和自动拆箱)。这有个经典的例子,就是如何用函数实现两个数的交换。你可以思考思考。
回复 使用道具 举报
引用类型就是它代表的是一个地址,而它本身并没有值,只是指向了一个值的地址 这就叫引用数据类型!
回复 使用道具 举报
基本类型自然是简单,声明是自然系统就给它空间了。例如,

int baijq;  
baijq=250; //声明变量baijq的同时,系统给baijq分配了空间。

引用类型就不是了,只给变量分配了引用空间,数据空间没有分配,因为谁都不知道数据是什么啊,整数,字符?我们看一个错误的例子:

MyDate today;

today.day = 4; //发生错误,因为today对象的数据空间未分配。

那我们怎么给它赋值啊?引用类型变量在声明后必须通过实例化开辟数据空间,才能对变量所指向的对象进行访问。举个例子:

MyDate today;            //将变量分配一个保存引用的空间

today = new MyDate();     //这句话是2步,首先执行new MyDate(),给today变量开辟数据空间,然后再执行赋值操作。

小总结:

如果是引用类型的变量,必须先得new一个对象出来。不new哪来的对象啊,不new哪有数据空间啊?没有数据空间怎么能访问呢?这回明白了吧!

我们还有个问题没有说,引用类型变量怎么赋值?这个就不是很难了。举个例子:

MyDate a,b;                       //在内存开辟两个引用空间

a  =  new MyDate();    //开辟MyDate对象的数据空间,并把该空间的首地址赋给a

b  =  a;                      //将a存储空间中的地址写到b的存储空间中
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马