1. 什么是耦合
在一个大程序中,多个模块之间存在着依赖关系, 就是耦合, 耦合不可避免, 我们要做的就是尽可能降低耦合度, 实现高内聚低耦合的代码;
举个例子:
javaWEB开发中常用的三层结构, Controller层, Service层, Dao层,
Service层要调用dao层方法,就必须要在Service层创建一个Dao层接口的实现类对象, 如果Service层有很多类都创建了Daoceng接口实现类的对象, 当Dao层接口修改的时候, Service层的所有类都要一一修改, 给后期维护造成了很大的麻烦; 所以本章我们来介绍工厂模式是如何解决这类耦合的.
2. 传统未解耦时
Dao层接口和实现类
//Dao层接口
public interface AccountDao {
void saveAccount();
}
//Dao层接口的实现类
public class AccountDaoImpl implements AccountDao {
@Override
public void saveAccount() {
System.out.println("模拟保存账号操作......");
}
}
Service层接口和实现类,在Service实现类中我们看到创建了dao层的实现类对象,出现了耦合情况;
//service层接口
public interface AccountService {
//存钱方法
void saveAccount();
}
//service层接口的实现类
public class AccountServiceImpl implements</