首页 > 解决方案 > 为什么大多数人为了创建服务而创建接口?

问题描述

我试图service通过一个类直接创建一个而不实现自定义的interface. 它有效!所以我想知道为什么大多数人会花时间创建一个界面来创建一个service?

标签: spring

解决方案


我可以指出两个原因:

  • 它有助于解耦。(当然,仍然可以创建没有接口的解耦类。)

  • 您在 question 标签中添加了 spring,所以这个原因是特定的:在许多情况下 Spring 需要一个接口来正确创建 jdk 代理(使用 AOP 时需要这个接口)。可以在没有接口的情况下创建代理(spring 将使用 CGLIG 而不是 JDK),但是“幕后”存在一些差异。在这里检查。


推荐阅读