《大话设计模式》java实现之抽象工厂模式
来源:互联网 发布:java在线直播源码 编辑:程序博客网 时间:2024/05/21 03:56
如前面所说,抽象工厂模式是针对产品族概念,一个factory对应多个产品的情况
UML图
代码结构
public class AccessDepartment implements IDepartment { @Override public void insert(Departmen departmen) { System.out.println("在Access中给Department表增加一条记录"); }}
public class AccessFactory implements IFactory { @Override public IUser createUser() { return new AccessUser(); } @Override public IDepartment createDepartment() { return new AccessDepartment(); }}
public class AccessUser implements IUser { @Override public void insert(User user) { System.out.println("在Access中给User表增加一条记录"); }}
public class Client { public static void main(String[] args) { User user = new User(); Departmen departmen = new Departmen(); //IFactory factory = new SqlServerFactory(); IFactory factory = new AccessFactory(); IUser iUser = factory.createUser(); iUser.insert(user); IDepartment iDepartment = factory.createDepartment(); iDepartment.insert(departmen); }}
public class Departmen { private int id; private String deptName;}
public interface IDepartment { void insert(Departmen departmen);}
public interface IFactory { IUser createUser(); IDepartment createDepartment();}
public interface IUser { void insert(User user);}
public class SqlServerDepartment implements IDepartment { @Override public void insert(Departmen departmen) { System.out.println("在SQL Server中给Department表增加一条记录"); }}
public class SqlServerFactory implements IFactory { @Override public IUser createUser() { return new SqlServerUser(); } @Override public IDepartment createDepartment() { return new SqlServerDepartment(); }}
public class SqlServerUser implements IUser { @Override public void insert(User user) { System.out.println("在SQL Server中给User表增加一条记录"); }}
public class User { private int id; private String name; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; }}
运行结果
阅读全文
0 0
- 《大话设计模式》java实现之抽象工厂模式
- 大话设计模式之抽象工厂模式
- 大话设计模式之抽象工厂模式
- 大话设计之抽象工厂模式
- 大话设计模式读书笔记之抽象工厂
- 《大话设计模式》java实现之简单工厂模式
- 《大话设计模式》java实现之工厂方法模式
- 大话设计模式 抽象工厂
- 大话设计模式之之抽象工厂模式
- <十一>读<<大话设计模式>>之抽象工厂模式
- 大话设计模式java版--抽象工厂模式
- 大话设计模式之简单工厂模式、抽象工厂模式及工厂方法模式的比较
- 大话设计模式之简单工厂模式&工厂方法模式&抽象工厂模式
- 大话设计模式之简单工厂模式、抽象工厂模式及工厂方法模式的比较
- 大话设计模式-抽象工厂模式
- 大话设计模式_抽象工厂模式
- 《大话设计模式》 -- 14.抽象工厂模式
- 大话设计模式-抽象工厂模式
- JSP---JavaBean的使用-jsp:useBean标签相关
- 编程语言中的超级英雄们
- 2年Java开发工作经验,跳槽之后面试20余家公司的总结
- 「算法精解_C语言描述」栈_栈的实现与分析
- 安装Python和版本选择
- 《大话设计模式》java实现之抽象工厂模式
- js数组去重
- oracle 创建数据库
- 调试时的程序员,好比在犯罪现场的侦探…
- 马尔可夫和马尔可夫链简介
- 2017.11.16笔记
- 大数据早报:深圳龙华区与中科院合作共建人工智能与大数据研究院;西安部分路口将启用人脸识别系统(11.17)
- Volley网络请求使用讲解
- 机器学习:正则化到底是怎么一回事?