java – 在服务层上使用接口

在我们的项目架构中,我们使用经典的MVC模式,包括经典服务层(打开事务并调用DAO层).

对于每个服务,我们都有一个实现和他的接口.但说实话,我很确定对于一个服务和他的界面,我们永远不会有多个实现.好吧也许更清楚的是在界面中声明公共方法有助于知道服务的作用,但是接口用于多个实现,如果我们知道我们不会有多个实现,我们应该保持他们?

解决方法

documentation

Implementing an interface allows a class to become more formal about
the behavior it promises to provide. Interfaces form a contract
between the class and the outside world,and this contract is enforced
at build time by the compiler.

如果您知道只有一个实现,那么实现本身将定义合同,因此您可以删除接口.

但是编写接口可以帮助您更好地定义合同,并且您可能需要在给定点为服务编写模拟,在这种情况下,您将从接口的使用中受益.

相关文章

HashMap是Java中最常用的集合类框架,也是Java语言中非常典型...
在EffectiveJava中的第 36条中建议 用 EnumSet 替代位字段,...
介绍 注解是JDK1.5版本开始引入的一个特性,用于对代码进行说...
介绍 LinkedList同时实现了List接口和Deque接口,也就是说它...
介绍 TreeSet和TreeMap在Java里有着相同的实现,前者仅仅是对...
HashMap为什么线程不安全 put的不安全 由于多线程对HashMap进...