我正在使用服务提供者概念创建一个可扩展的 Java 应用程序。我有一个名为 PoolTuningStrategy 的抽象类,它是一项服务,我的应用程序的用户以扩展此 PoolTuningStrategy 类的服务提供者的形式提供他们的服务,用户以 jar 文件的形式提供他们的实现,我的应用程序使用 ServiceLoader 类来动态加载服务提供者如下
int i=0;
for (PoolTuningStrategy foo : ServiceLoader.load(PoolTuningStrategy.class,urlloaders))
strategy[i++]=foo;
现在 strategy[] 包含所有实现集。现在我的问题是“如何创建一个扩展我的 Java 抽象类 PoolTuningStrategy 的 C++ 类,以便我可以使用 C++ 服务提供者。” 实际上,我希望我的应用程序能够被 Java 和 C++ 程序员扩展。我只使用 Java 完成了它,但我不知道如何通过 C++ 实现来扩展我的 Java 应用程序。