gpt4 book ai didi

java - 如何加载从现有类继承的自定义类?

转载 作者:行者123 更新时间:2023-12-01 17:38:29 27 4
gpt4 key购买 nike

我正在尝试仅使用此类的名称来创建类的对象:

public interface Foo {
}
public class Bar implements Foo {
}
[...]
Class<Foo> c = Class.forName("com.XXX.Bar").asSubclass(Foo.class);
Foo foo = c.newInstance();

编译器说:

incompatible types found : 
java.lang.Class<capture#47 of ? extends com.XXX.Foo>
required: java.lang.Class<com.XXX.Foo>

这里出了什么问题?

最佳答案

c是一个扩展Foo,你应该在代码中使用 <? extends ...> 来表达它语法:

Class<? extends Foo> c = Class.forName("com.XXX.Bar").asSubclass(Foo.class); 

关于java - 如何加载从现有类继承的自定义类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3871903/

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