![]() |
1
3
我主张创建两个附加接口:
然后让你所有的插件实现其中的一个或另一个。你唯一需要区别的时候就是打电话的时候
例如,要执行呼叫,您需要执行如下操作:
注意有 技术上 没有限制,允许开发人员只实现其中一个版本,但希望这不是问题。在这段代码中,首先检查参数化版本的存在,然后检查无参数化版本,如果两者都找不到,则抛出异常。 |
![]() |
2
1
不幸的是有一个或另一个
一种可能是将两个重载添加到
另一种可能是两个接口,
另一种可能是扩展方法
|
![]() |
3
0
您可以有一个这样的基本接口:
运行适当的插件…
|
![]() |
4
0
所以,你说…
我不太确定我是否理解包装类的问题,但是我们可能在考虑不同的事情。 我正在考虑的包装类将采用参数为零的接口,并使其看起来像一个参数的接口。当调用“runplugin”时,该参数将被忽略。 这将删除接口类型上的任何分支,您只需创建一个类——它可以包装任何无参数接口的实例。所以每个插件不应该需要任何特殊的代码。只需在创建插件实例时创建包装。 (顺便说一下,这是 Adapter pattern ) |
![]() |
Jace Johnson · 我应该使用多个地图功能还是只使用一个 1 年前 |
|
Pop Bob · Api返回UnsupportedMediaType 1 年前 |
![]() |
Mr FoX · 如何从mysqli输出json数组,而[重复] 1 年前 |