class中的泛型为什么不会擦除? 20

class中的泛型为什么不会擦除为什么还能通过newInstance创造出各种不同类型,不是运行时就擦除了吗... class中的泛型为什么不会擦除 为什么还能通过new Instance创造出各种不同类型,不是运行时就擦除了吗 展开
 我来答
destiny_葭陘
2020-07-24 · TA获得超过2845个赞
知道大有可为答主
回答量:2131
采纳率:88%
帮助的人:692万
展开全部

java 泛型只是对编绎时有效,在运行时就被擦除了,起不到类型限制的作用。

比如 List<String> list = new ArrayList<>();

那么 list 应该只能添加 String 类型的元素,添加 Integer 类型的就会报错,但是通过反射,能够添加 Integer 类型的元素。

测试代码:

java泛型擦除测试

不知道你说的”通过new Instance创造出各种不同类型“是什么意思,这应该和泛型没有关系。

追问
比如class,擦除后变class,那我new  Instance他怎么知道我要new一个Father对象呢?
追答
你具体描述下呢。我都看不懂你这句话。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式