gpt4 book ai didi

java - 实例化泛型类型时的警告

转载 作者:行者123 更新时间:2023-12-01 19:03:22 25 4
gpt4 key购买 nike

我有一个用于实例化泛型类型的代码片段,如下所示:

public class GenericMessageMapper<I ,X>
{
public X xFromI(I imf)
{
// do thing by imf argument
Class<X> clazz = (Class<X>)((ParameterizedType)
this.getClass()
.getGenericSuperclass())
.getActualTypeArguments()[1];
X x = clazz.newInstance();
}
}

上面的代码工作正常,但是 MyEclipse通过以下消息在代码上显示警告(准备clazz变量行时有黄色下划线):Type safety: Unchecked cast from Type to Class<X>

我临时在 xFromI 上面添加以下注释方法:

@SuppressWarnings("unchecked")

此警告的原因是什么以及解决方案是什么?

最佳答案

警告就是这样。一个警告。有时警告是无关紧要的,有时却不是。它们用于引起您对编译器认为可能存在问题但实际上可能不是问题的问题的注意。

在强制转换的情况下,它总是会发出警告。如果您绝对确定特定的强制转换是安全的,那么您应该考虑在该行之前添加如下注释:

@SuppressWarnings (value="unchecked")

引用Type safety: Unchecked cast

关于java - 实例化泛型类型时的警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11324270/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com