设计模式(二) 简单工厂模式
来源:互联网 发布:嵌入式软件开发过程 编辑:程序博客网 时间:2024/04/29 23:13
简单工厂模式(静态工厂方法模式)
定义:定义一个具体的工厂类负责创建一些类的实例。
创建一个食品抽象类Food
public abstract class Food {public abstract void use();}
创建一个小吃类Eat继承Food
public class Eat extends Food {@Overridepublic void use() {System.out.println("This food can eat");}}
创建一个饮料类Drink继承Food
public class Drink extends Food {@Overridepublic void use() {System.out.println("This food can drink");}}
创建一个食品工厂类
public class FoodFactory {public static Food createFood(String foodName){if(foodName.equals("eat")){return new Eat();}else if(foodName.equals("drink")){return new Drink();}else{return null;}}}
测试类:
public class Main {public static void main(String[] args) {Eat e = (Eat) FoodFactory.createFood("eat");e.use();Drink d = (Drink) FoodFactory.createFood("drink");d.use();}}
控制台输出如下:
This food can eat
This food can drink
工厂类的优缺点:
优点:
客户端不需要负责对象的创建,明确的各个类的职责
缺点:
静态工厂类负责对所有对象的创建,如果有新对象的增加,不利于后期的维护
0 0
- 设计模式(二) 简单工厂模式
- 设计模式(二):简单工厂模式
- 设计模式(二)工厂模式:简单工厂模式
- 设计模式学习(二)简单工厂
- 设计模式之简单工厂(二)
- [设计模式](二):工厂模式(简单工厂|静态工程、工厂方法|多工厂、抽象工厂)
- 设计模式之二:简单工厂模式
- JAVA设计模式二简单工厂模式
- 设计模式学习(二)之工厂模式(简单工厂+工厂方法+抽象工厂)
- 设计模式(二)-简单工厂(Simple Factory)模式
- 设计模式笔记(二)——简单工厂模式
- java设计模式二(简单工厂模式)
- 设计模式学习(二) 简单工厂模式
- 设计模式(二)简单工厂与策略模式
- C++设计模式之简单工厂模式(二)
- 设计模式学习(二)------ 简单工厂模式
- C#设计模式(二)简单工厂模式
- php设计模式(二)简单工厂模式
- C/C++——WinSocket:Server端
- JBPM基本配置
- 【Java】Java中的修饰符顺序
- 深度学习平台Deep Water简介
- 辛普森
- 设计模式(二) 简单工厂模式
- Hadoop维护操作整理
- 三对角矩阵
- Codevs1077多源最短路
- C/C++——WinSocket:Client端
- Activity生命周期二三事
- 米勒测试
- HDU 1251 Trie入门
- Java连接SQL Server教程全