public interface ExtensionPoint { void execute(); } public class ExtensionImpl1 implements ExtensionPoint { @Override public void execute() { } } public class ExtensionImpl2 implements ExtensionPoint { @Override public void execute() { } } <extensions> <extension id="extension1" class="com.example.ExtensionImpl1"/> <extension id="extension2" class="com.example.ExtensionImpl2"/> </extensions> ExtensionLoader<ExtensionPoint> extensionLoader = new ExtensionLoader<>(ExtensionPoint.class); extensionLoader.loadExtensions(); ExtensionPoint extension1 = extensionLoader.getExtension("extension1"); extension1.execute(); ExtensionPoint extension2 = extensionLoader.getExtension("extension2"); extension2.execute();


上一篇:
下一篇:
切换中文