且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

设计模式 - Java中要是一个接口只有一个实现类, 还有必要设计接口吗?

更新时间:2023-01-12 12:42:58

有必要,因为可以在你需要另一种实现的时候不用修改其他模块中既有的代码。

换而言之,是在扩展模块的需求下,将对原有代码的修改程度限制到用接口控制的耦合点之前。

举个例子:
DogDao有两个方法findByBrand和save,DogDaoMysqlImpl是存进Mysql,DogDaoXmlImpl用xml文本方式存等等。这个时候所有用DogDao接口进行耦合的代码是不依赖具体的实现的,因此可以较为轻松地将DogDao的实现从mysql迁到xml中。

业务设计的时候就把自己从实现中略略抽象出来,面向接口一方面是为了降低耦合,其实也能增强了设计思考的层次感。