知道接口在当前类路径中是否有任何实现类

时间:2018-12-06 20:44:32

标签: java interface

我们正在为公司其他团队开发一个图书馆。 我想设计一个Authentication接口,如果我们库的用户在他们的项目中实现了该接口,那么我们将使用他们的实现(可能通过反射)来进行认证。如果没有实现,那么我们将忽略此部分。

我们之所以喜欢这种方法,而不是通过提供方法来注册其auth类,是因为我们没有向项目团队公开这些高级功能。他们将主要在业务逻辑部分工作。

1 个答案:

答案 0 :(得分:1)

您可能想要Java Service Provider Interface;它正是针对这种情况而设计的。它确实需要插件创建者在一个知名文件中列出插件类,但是任何为您的库编写自定义插件的人都可以处理这一部分。