美文网首页
Java设计模式(2):简单工厂模式

Java设计模式(2):简单工厂模式

作者: 博为峰51Code教研组 | 来源:发表于2017-05-02 23:41 被阅读0次

简单工厂模式又叫静态工厂模式,是工厂模式三中状态中结构最为简单的。主要有一个静态方法,用来接受参数,并根据参数来决定返回实现同一接口的不同类的实例。

单例模式设计思想:

1)首先,定义一个抽象父亲类或接口

2)定义具体的子类来继承或实现第一步的抽象父类或接口:

3)定义一个简单工厂类,并定义一个静态生产方法,根据传进来的type参数生成对应的具体子类。

示例:

enum ShapeTYPE{

RECTANGLE,SQUARE,CIRCLE;

}//首先,创建一个接口。

interface Shape {

void draw();

}

//创建实现接口的实体类。

class Rectangle implements Shape {

@Override

public void draw() {

System.out.println("绘制矩形...");

}

}

class Square implements Shape {

@Override

public void draw() {

System.out.println("绘制正方形...");

}

}

class  Circle implements Shape {

@Override

public void draw() {

System.out.println("绘制圆形...");

}

}

class ShapeFactory {

//使用 getShape 方法获取形状类型的对象

public Shape getShape(ShapeTYPE shapeType){

if(shapeType == null){

return null;

}

if(shapeType==ShapeTYPE.CIRCLE){

return new Circle();

} else if(shapeType==ShapeTYPE.RECTANGLE){

return new Rectangle();

} else if(shapeType==ShapeTYPE.SQUARE){

return new Square();

}

return null;

}

}

public class FactoryPatternDemo {

public static void main(String[] args) {

ShapeFactory shapeFactory = new ShapeFactory();

//获取 Circle 的对象,并调用它的 draw 方法

Shape shape1 = shapeFactory.getShape(ShapeTYPE.CIRCLE);

//调用 Circle 的 draw 方法

shape1.draw();

//获取 Rectangle 的对象,并调用它的 draw 方法

Shape shape2 = shapeFactory.getShape(ShapeTYPE.RECTANGLE);

//调用 Rectangle 的 draw 方法

shape2.draw();

//获取 Square 的对象,并调用它的 draw 方法

Shape shape3 = shapeFactory.getShape(ShapeTYPE.SQUARE);

//调用 Square 的 draw 方法

shape3.draw();

}

}

相关文章

  • Java 设计模式1-简单工厂模式

    简单工厂模式不属于标准的Java 23设计模式之内。根据分类,简单工厂模式又分类为:1.普通简单工厂模式。2.多方...

  • 设计模式-工厂模式

    设计模式1 设计模式2 工厂模式 工厂模式可简单的分为三类:简单工厂,工厂方法,抽象工厂 简单工厂模式 定义 简单...

  • 设计模式系列-简单工厂模式

    JAVA设计模式系列: 单例模式 观察者模式 模板方法模式 简单工厂模式 定义 简单工厂模式又叫做静态工厂方法模式...

  • 工厂模式

    java设计模式-工厂模式 工厂模式: 工厂模式是java设计模式里最常用的设计模式之一。 工厂模式属于创建型模式...

  • 简单工厂模式

    Java23种设计模式--简单工厂模式 一、什么是简单工厂模式 简单工厂模式属于类的创建型模式,又叫做静态工厂方法...

  • 设计模式系列-抽象工厂模式

    JAVA设计模式系列: 单例模式 观察者模式 模板方法模式 简单工厂模式 抽象工厂模式 抽象工厂模式 定义 抽象工...

  • iOS设计模式(3)适配器模式

    设计模式系列文章 《iOS设计模式(1)简单工厂模式》《iOS设计模式(2)工厂模式》《iOS设计模式(4)抽象工...

  • JAVA基础23种设计模式----简单工厂模式--MonkeyK

    JAVA基础23种设计模式----简单工厂模式--MonkeyKing 简单工厂模式属于类的创建模型模式,又叫静态...

  • Java设计模式教程

    Java设计模式教程 Java工厂设计模式 Java抽象工厂模式 Java单例模式 Java建造者(Builder...

  • iOS设计模式(5)策略模式

    设计模式系列文章 《iOS设计模式(1)简单工厂模式》《iOS设计模式(2)工厂模式》《iOS设计模式(3)适配器...

网友评论

      本文标题:Java设计模式(2):简单工厂模式

      本文链接:https://www.haomeiwen.com/subject/zynhtxtx.html