golang里的struct只能有属性, interface只能有方法定义。这点在java里很好实现的abstract class在这里就不能直接实现, 可以通过struct和interface的结合定义,实现抽象类的类似的功能。

直接上代码:

代码都来之与项目

在这个项目里,重构了executor和默认的RestfulExecutor的实现方式, 就是采用了上述的方式。

先定义接口


然后定义我们需要的抽象类


实现抽象类里的主要方法


子类实现


最关键的地方,调用


具体代码可以查看项目中的源码


项目地址



推荐几个好工具