SSH框架Service层能用抽象类而不是接口吗?

Jesse_____ 2014-03-05 10:57:10
我最近在用SSH框架写程序,都是有service层、service.impl层等等。
现在service层里面都是接口,但是我想实现一个模板方法(就是规定一些方法必须按顺序执行)。
于是我就用了一个抽象类,比如
public abstract class A {
protected abstract void func_step1();
protected abstract void func_step2();
protected abstract void func_step3();

// 以下是模板方法
public void template() {
func_step1();
func_step2();
func_step3();
}
}

但是我们组的人不让我这么做,他说service里面统一都必须是接口。
请问大家觉得这里用抽象类妥当吗,有规定service里都是接口吗?

请问出了统一规范之外,还有什么理由
...全文
356 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
loveunittesting 2014-03-06
  • 打赏
  • 举报
回复
你最好别这么做。设计成接口的好处就是单元测试的时候写Mock类很方便,如果搞成类就麻烦多了。 有个变通的方法,还是使用接口,你的抽象类实现这个接口,然后具体实现类再继承这个类就行了。
java_liyi 2014-03-06
  • 打赏
  • 举报
回复
有米有人说过某种意义上接口也是一个特殊的抽象类呢
Inhibitory 2014-03-06
  • 打赏
  • 举报
回复
面向接口编程只是一种推荐的开发方式,不是必须这么做。

67,550

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧