黑马程序员技术交流社区

标题: int.class有父类吗? [打印本页]

作者: 高双武    时间: 2011-11-18 23:32
标题: int.class有父类吗?
说Object是所有类的子类,int.class的父类是Object吗?那为什么
int []  aa=new int [2];
Object [] bb=aa;

编译不通过?
作者: 徐杨    时间: 2011-11-18 23:38
Object类是所有类的父类
int []  aa=new int [2];
Object [] bb=aa;
把Object  后面的[]去掉就可以通过编译了

int []  aa=new int [2];
Object bb=aa;
这个可以理解为    aa这个int类型的数组对象  赋给类Object类的bb对象
作者: 高双武    时间: 2011-11-18 23:53
徐杨 发表于 2011-11-18 23:38
Object类是所有类的父类
int []  aa=new int [2];
Object [] bb=aa;

int []  aa=new int [2];
Object bb=aa;
aa是int[]类型的,这只能说明int[]类型的父类是Object,不能说明int的父类是Object啊
作者: 徐杨    时间: 2011-11-19 00:07
Integer  是 int这种基本类型的封装类  
Object是Integer的父类
JDK1.5以后有一个新的特性就是自动装箱拆箱特性  
实际上Object bb=aa;
是先把aa自动装箱成了integer类型  然后再给Object
关于自动装箱 可以看看视频
也可以是试试看 Integer = 1;  编译通过
1是int类型  为什么可以直接给integer
这实际上就是一个自动装箱的过程  




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2