gpt4 book ai didi

java - 指定接口(interface)的反射图

转载 作者:行者123 更新时间:2023-12-01 12:28:30 24 4
gpt4 key购买 nike

我想通过反射创建类映射。如何告诉java反射我只需要某个接口(interface)的实现?

我需要这样的东西:

public interface Interface {}
public class InterfaceImpl1 implements Interface {}
public class InterfaceImpl2 implements Interface {}
public class Main {
private static Map<Class<Interface>, String> classMap = new HashMap();
static {
classMap.put(InterfaceImpl1.class, "impl1"); // <- Compiler says it's an error
classMap.put(InterfaceImpl2.class, "impl2"); // <- Also an error :(
}
}

我想为反射添加某种类型和多态性。应该怎样?

最佳答案

使用通配符表明您需要Interface 的任何子类型。

private static Map<Class<? extends Interface>, String> classMap = new HashMap<>();

关于java - 指定接口(interface)的反射图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26134686/

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