您的位置:首页 > 其它

创建型模式之工厂方法模式(日志记录器)

2015-11-04 15:38 357 查看
题目:某系统日志记录器要求支持多种日志记录方式,如文件日志记录(FileLog)、数据库日志记录(DatabaseLog)等,且用户可以根据要求动态选择日志记录方式,现使用工厂模式设计该系统。

类图



package cn.factory2;

public class Client {
public static void main(String[] args) {
try {
Log log;
//LogFactory factory1;
LogFactory factory2;
//factory1 = new DatabaseLogFactory();
factory2 = new FileLogFactory();
//factory = (LogFactory)XMLUtil.getBean();
log = factory2.createLog();
log.writeLog();
} catch(Exception e) {
System.out.println(e.getMessage());
}
}
}
package cn.factory2;

public class DatabaseFile implements Log{
public void writeLog() {
System.out.println("数据库日志写入中。。。");
}
}
package cn.factory2;

public class DatabaseLogFactory implements LogFactory{
public Log createLog() {
System.out.println("数据库日志工厂生产数据库日志。");
return new DatabaseFile();
}
}
package cn.factory2;

public class FileLog implements Log{
public void writeLog() {
System.out.println("文件日志写入中。。。");
}
}
package cn.factory2;

public class FileLogFactory implements LogFactory{
public Log createLog() {
System.out.println("文件日志工厂生产文件日志。");
return new FileLog();
}
}
package cn.factory2;

public interface Log {
public void writeLog();
}
package cn.factory2;

public interface LogFactory {
public Log createLog();
}
运行效果图

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: