我正在制作一个应该有"模块"哪些人可以通过API制作自己的代码,然后他们可以添加其中一个Modules
,让他们称之为ModuleNicerText
,他们将其添加到MyProgram\Modules
1}}文件夹作为.java类(源),类实现Module
。
Module
类有一种方法 (嗯,它有更多,但为了这篇文章我会说一个) ,叫做onUpdate()
,我希望能够以某种方式将该类导入我的代码,然后在需要时运行.onUpdate()
,我希望我能够很好地解释它,如果我还没有那么这是另一个例子:
我有一个名为Module
这是Module
的主体:
public interface Module {
void onUpdate();
}
现在,我有一个名为MyProgram
的主类,在那个类中我有这个方法:
public void onUpdate(){
for (Module module : modules){
module.onUpdate();
}
}
我使用这种系统,所以我可以轻松地添加或删除组件而不必乱用一堆东西,如果它们都挤在一个类/方法中。
现在,有一个目录在运行程序MyProgram\Modules
时创建,任何想要的人都可以添加一个扩展Module
接口的.java文件。
我希望能够查看该目录中的.java文件,并能够为它们调用.onUpdate()
方法,以便我的用户可以尽可能多地进行自定义!
非常感谢任何帮助,我提前感谢你花时间阅读这一巨大的文字墙:)
答案 0 :(得分:1)
有一篇好文章(有点旧,但很好的解释)。 它提供了有关如何通过UpToDate文件检查使用代理模式的详细信息。 当您在接口中保留相同的方法并仅更改它的实现时,您只能在实现接口的类中使用此技术。
答案 1 :(得分:0)
您可以使用Java Simple Plugin Framework。它做了类似于你想要的东西,并且随时可以使用。