什么抽象工厂方法?
抽象工厂是指当业务的产品线分多条,每条产品线又有复杂逻辑的时候,先统一抽象一个工厂,再给不同的产品线设置不同的实现工厂,在每个实现工厂里面实现具体产品细节。
实际案例说明
在一个商户管理项目中,有管理员密码,普通操作员密码和支付密码三种密码,每种密码有对应的生成规则和密码加密规则,因此使用了抽象工厂模式,具体如下:
抽象密码工厂方法:
/**
* @describe: TODO
* @author: sunlight
* @date: 2021/6/2 22:04
*/
public abstract class AbstractPassword {
/**
* 密码加密
*
* @param password
* @return
*/
public abstract String encryptPassword(String password);
}
管理员密码实现工厂类:
/**
* @describe: TODO
* @author: sunlight
* @date: 2021/6/2 22:07
*/
public class AdminPassword extends AbstractPassword {
/**
* 管理员密码加密
*
* @param password
* @return
*/
@Override
public String encryptPassword(String password) {
return null;
}
普通操作员密码实现工厂:
/**
* @describe: TODO
* @author: sunlight
* @date: 2021/6/2 22:09
*/
public class OperatorPassword extends AbstractPassword {
/**
* 普通操作员密码加密
*
* @param password
* @return
*/
@Override
public String encryptPassword(String password) {
return null;
}
}
支付密码实现工厂类:
/**
* @describe: TODO
* @author: sunlight
* @date: 2021/6/2 22:10
*/
public class PayPassword extends AbstractPassword {
/**
* 支付密码加密
*
* @param password
* @return
*/
@Override
public String encryptPassword(String password) {
return null;
}
}