gpt4 book ai didi

java - 处理依赖 Java 库添加新类吗?

转载 作者:行者123 更新时间:2023-11-30 01:56:30 25 4
gpt4 key购买 nike

我的应用程序具有以下架构:

我在库中拥有不同数量的实现特定接口(interface)的类。 (这些类都实现完全相同的接口(interface))。

这些都由一个方法实例化,放置在一个列表中,然后发送到某个以某种方式处理它们的函数。

public class Initialize {

public static void main(String[] args){

ClassInterface num1 = new ClassA();
ClassInterface num2 = new ClassB();
...
ClassInterface numX = new ClassX();

List<ClassInterface> list = new ArrayList<ClassInterface>();
list.add(num1, num2, num3.....);

processList(list);
}

}

上述类(ClassAClassB 等)是从库加载的。

现在,虽然这可行,但它非常困惑,并且每当在库中创建实现 ClassInterface 的新类时,都需要重新编译上述程序(即使没有真正改变任何内容)。

有没有更好的方法来解决此类问题?或者我错过了一些明显的东西?

最佳答案

您可以使用Reflections用于扫描类路径中实现 ClassInterface 的所有类的库。

Reflections reflections = new Reflections("my.package");
Set<Class<? extends SomeType>> subTypes = reflections.getSubTypesOf(ClassInterface.class);

关于java - 处理依赖 Java 库添加新类吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54315481/

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