Java 简单的静态工厂模式
来源:互联网 发布:手机号码搜索软件 编辑:程序博客网 时间:2024/05/18 22:42
工厂模式是学习java的重中之重,这是我就代码一下;
package com.example.string.PrinterFactory;public class Test {/** * @param args */public static void main(String[] args) { int flag = 1; Printer printer = PrinterFactory.getPrinter(flag); printer.open(); printer.print("对象的转型好用吧~"); printer.close();} }package com.example.string.PrinterFactory; public class PrinterFactory {//添加static是为了调用方便 public static Printer getPrinter(int flag) { Printer printer = null; if(flag == 0) { printer = new HPPrinter(); } else if(flag == 1) { printer = new CanonPrinter(); } return printer;} }package com.example.string.PrinterFactory;public interface Printer {void open();void print(String s);void close();}package com.example.string.PrinterFactory;public class HPPrinter implements Printer {public void open() { System.out.println("HP: open");}public void print(String s) { System.out.println("HP: print--> " + s);}public void close() { System.out.println("HP: close");} }package com.example.string.PrinterFactory;public class CanonPrinter implements Printer {public void open() { System.out.println("Canon: open");}public void print(String s) { System.out.println("Canon: print-->" + s);}public void close() { this.clean(); System.out.println("Canon: close");}public void clean() { System.out.println("Canon: clean");} }
这就是简单的静态工程模式;
PrinterFactory并不关心Printer类有多少个子类,这样我们就能够自由地修改Printer子类了。
工厂方法模式的思路很简单,就是把生成对象的代码,封装在工厂类当中。
0 0
- Java 简单的静态工厂模式
- java简单静态工厂模式
- java va中工厂模式( 静态工厂模式、工厂方法模式、抽象工厂模式)的介绍以及简单例子
- java中简单工厂模式(静态工厂方法模式)
- Java之简单静态工厂模式
- JAVA之工厂模式(静态工厂模式(简单工厂模式)、工厂方法模式、抽象工厂模式)
- 静态工厂模式(简单工厂模式)
- 简单工厂模式(静态工厂模式)
- JAVA设计模式:简单静态工厂方法模式
- Java 静态工厂模式的使用
- 学习心得---简单工厂模式/静态工厂方法
- 静态工厂(简单工厂)模式
- Java设计模式之——简单工厂模式(静态工厂模式)
- 设计模式:浅析 抽象工厂、工厂方法、简单(静态)工厂 java实现
- 设计模式案例--工厂模式--简单工厂(静态工厂)(simplefactory)
- Java 简单工厂模式
- java 简单工厂模式
- 简单工厂模式--Java
- cocos2dx[3.2](9) ——数学类Vec2/Size/Rect
- 自己编程实现简单的字符设备架构
- 玩转JDK
- zooekeeper集群安装部署
- js个人笔记2
- Java 简单的静态工厂模式
- JNI学习
- shape边框,圆角
- WPG闪电充移动电源5000m毫安石墨烯聚合物超薄便携移动电源智能苹果安卓手机通用
- 面试技巧总结
- 两两交换链表中的节点
- 从BaseActivity与BaseFragment的封装谈起
- Spring Batch(7): 并行与扩展
- 傅里叶变换(python)