标签:理解 概念 需要 运行 应用程序调用 使用场景 文件 日志 public
1、概念
工厂方法模式是创建型模式,定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂方法使一个类的实例化延迟到子类。
2、模式结构
3、使用场景
4、优缺点
优点:
缺点:
5、实例
在系统日志设计中,可能需要考虑多种日志系统,例如文件和数据库日志系统,现使用工厂方法模式设计该系统。
首先,先创建抽象日志类ILog。
public interface ILog {
void writeLog(LogType type);
}
其次,创建具体日志类FileLog和DatabaseLog
public class FileLog implements ILog {
@Override
public void writeLog(LogType type) {
// 文件日志逻辑
}
}
public class DatabaseLog implements ILog {
@Override
public void writeLog(LogType type) {
// 数据库日志逻辑
}
}
再次创建抽象日志工厂类ILogFactory
public interface ILogFactory {
ILog createLog();
}
最后创建具体工厂类FileLogFactory和DatabaseLogFactory
public class FileLogFactory implements ILogFactory {
@Override
public ILog createLog() {
return new FileLog();
}
}
public class DatabaseLogFactory implements ILogFactory {
@Override
public ILog createLog() {
return new DatabaseLog();
}
}
使用姿势
public static void main(String[] args) {
ILogFactory factory = new FileLogFactory(); // 换数据库日志,改这里即可
ILog log = factory.createLog();
log.writeLog(LogType.Debug);
}
标签:理解 概念 需要 运行 应用程序调用 使用场景 文件 日志 public
原文地址:https://www.cnblogs.com/fomin/p/9821225.html