最近小博主再学习泛型中遇到了一些坑,再这里把这个坑跟大家说下,让大家少走弯路
直接上图
(A[])new Object[newCapacity)
这句虽然在编译器中没有语法上的错误,可是一运行则爆出下面这样的错误
一开始,复查了十几遍也以为是自己泛型定义错了,甚至也重写了好几次方法,最重点的是即使debug编译器还没走到方法里面就报错。但是不负有心人,经过了一天的排查,原来是Object类型引用错误。。。。这里我通过编译器(鼠标+左键)点进Object里面,发现Object是org包下的一个接口
这真的是大坑啊。。。。(类似Logger同名类型遇到的坑),一步仔细就引入了同类名的接口或类,总之不是自己所期望的。编译器检测只要不是语法上错误是检查不出来。之后再源代码把java.lang的Object类引入
最后运行,泛型类强转成功!!!!
写的不好,欢迎吐槽