黑马程序员技术交流社区
标题:
老夫关于泛型有个地方不解!!所以求助于各位兄台
[打印本页]
作者:
茶念小手
时间:
2013-8-11 23:03
标题:
老夫关于泛型有个地方不解!!所以求助于各位兄台
本帖最后由 茶念小手 于 2013-8-13 00:13 编辑
public static <T> void test(T a,T obj){
Object object = obj;
a =object;
}
复制代码
a =object;这里报错了 ,,,
为什么一个T类型的参数可以转成Object类型的
而Object类型的转不成T类型的啊?
作者:
茶念小手
时间:
2013-8-12 01:34
求解释啊!!各位大神
作者:
吴光新
时间:
2013-8-12 02:22
Object是最原始的类型,就是说系统默认是所有类的父类,可以把子类转换为父类,不可能把父类转换为子类,比如可以把猫类转换为其父类(动物类),但不可以把动物类转换为猫类。
我醉了,不要相信
作者:
清心玉质
时间:
2013-8-12 10:14
我觉着,Object是所有类的父类,也就是所有对象、所有参数都可以用Object来接收。向上转型可以,但是向下转型的话就有点说不清楚了,可能是Integer\或者是String。。。因为不确定子类,所以很难把Object向下转。
视频里有讲到:可以将猫 狗 猪 什么的 都看成是动物,但是不能说动物是猫。。。
作者:
masterV
时间:
2013-8-12 11:01
Object是所有类的父类,而T类型可能是Object类,也可能是Object的子类,子类引用指向父类对象就有可能损失精度,所以会报错。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2