我正在用 Java 构建一个基于插件的程序,因此我想保持项目的封闭源代码,但允许第 3 方开发人员创建插件。我正在使用的系统正在运行,但这只是因为我(当然)可以完全访问源代码。
基本上,插件从 Plugin.java 继承,它们可以利用 ServerManager.java 来执行某些关键功能。如何使用户能够看到这些类的接口(即他们知道 ServerManager 具有 sendMessage() 函数并且插件类可以覆盖 onMessage() 函数)而不向他们提供完整的源代码。
来自 Objective-C 背景,我将 .h 文件用于这些“接口”,将 .m 文件用于源(私有)——然后我只提供 .h 文件——显然在 Java 中没有这样的东西一个.h文件!
提前致谢 :)