为了账号安全,请及时绑定邮箱和手机立即绑定

java泛型数组在类型转换时和正常的对Object类型进行强转有什么不同?

java泛型数组在类型转换时和正常的对Object类型进行强转有什么不同?

美食侵略者 2017-04-16 22:10:07
public class Test {     public static void main(String[] args) {         /*          * 第一段代码          */         A<Integer> a = new A<>();         a.test();         /*          * 第二段代码          */         Integer[] tt = (Integer[]) new Object[5];         System.out.println("&&&&&&&&&&");     } } class A<T> {     public void test() {         T[] tt = (T[]) new Object[5];         System.out.println("*********");     } }为什么第一段代码没报错,第二段代码报类型转换错误?
查看完整描述

1 回答

?
ruibin

TA贡献358条经验 获得超213个赞

第一个是同一个父类,第二个不是。如果没有同一个父类,不能强转,会报错。

查看完整回答
反对 回复 2017-04-17
  • 1 回答
  • 0 关注
  • 1932 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信