gpt4 book ai didi

java: 未经检查的对 getConstructor(java.lang.Class...) 的调用

转载 作者:太空狗 更新时间:2023-10-29 22:44:11 24 4
gpt4 key购买 nike

我正在使用反射来构造一个将文件作为参数的类 (ConfigBuilder):

Class myClassType = Class.forName(className);
Class[] types = new Class[] { File.class };
Constructor cons = myClassType.getConstructor(types);
Object[] constructorArgs = new Object[] { myFile };
cb = (ConfigBuilder) cons.newInstance(constructorArgs);

但是我收到这个警告:

warning: [unchecked] unchecked call to getConstructor(java.lang.Class<?>...) as a member of the raw type java.lang.Class
Constructor cons = myClassType.getConstructor(types);

显然,getConstructor 似乎需要一个通用类型,所以我尝试了类似的方法:

Class<?>[] types = new Class<?>[] { File.class };

但我收到相同的警告消息

有什么想法吗?

大卫

最佳答案

警告实际上是指myClassType。您还需要对其进行参数化(以及 cons)。

Class<?> myClassType = Class.forName(className);
Class<?>[] types = new Class[] { File.class };
Constructor<?> cons = myClassType.getConstructor(types);

关于java: 未经检查的对 getConstructor(java.lang.Class<?>...) 的调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2238818/

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