黑马程序员技术交流社区
标题:
怎么一大堆人把自动转型说成自动装箱?
[打印本页]
作者:
谢洋
时间:
2013-3-5 02:54
标题:
怎么一大堆人把自动转型说成自动装箱?
装箱就是转型吗?转型就是转装箱?
如:byte b= 1+1;这里发生的是装箱?还是转型?
再如:int数据装箱成Integer对象,不是把int数据装到里面去?
int与Interger根本都没发生继承关系,根本就不是同一个类型的,怎么转型?
作者:
lzw123451
时间:
2013-3-5 03:18
byte b= 1+1;这里发生的是是转型。
int是基本数据类型,Integer对象是对象,把基本数据类型变成相应的对象就是自动装箱。
int不是类,肯定不能和Integer发生什么继承关系。
作者:
谢达
时间:
2013-3-5 09:00
byte b= 1+1;个人认为这里既不涉及转型也不涉及装箱,这就是个简单的赋值吧
int i=1;
byte b1 = (byte) (i+1);//这里就涉及到数据类型转换,但不是转型
转型和装箱不是一个意思,转型的类型之间是有父子关系的
Integer 类在对象中包装了一个基本类型 int 的值。Integer 类型的对象包含一个 int 类型的字段。所以把int类型封装成Integer对象才是装箱,
作者:
沈文杰
时间:
2013-3-5 10:51
自动装箱:将基本数据类型包装在与之对应的java类中(四类八种)
其字节码相同,int 是Integer的一个实例对象
byte Byte
short short
int Integer 整形
long Long
float Float 浮点型
double Double
boolean Boolean 布尔型
char Character 字符型
强制类型转换:向上或者向下转型,属于多态
例子:
Integer i = 3;//自动装箱不需要手动写成Integer i = (Integer)3;
Object obj = (Object)"abc";//类型强转(类型提升,属于多态),手动完成
System.out.println(i);//自动拆箱
System.out.println(obj);
谢谢你上次帮我回答的问题哈,我懂了
作者:
杨杨
时间:
2013-3-5 11:53
跟楼主学习了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2