JAVA设计模式(二)-简单工厂

发布时间 2023-12-26 20:25:56作者: 夏沫琅琊

JAVA设计模式(二)-简单工厂

本篇文章主要讲下java 创建型设计模式中的简单工厂模式.

简单工厂模式又叫 静态工厂方法模式(Static FactoryMethod Pattern),是通过专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类。

1:定义接口

public interface People{
    void name();
}

2: 实现类

public class Man implements People {
    @Override
    public void name() {
        System.out.println("name: man");
    }
}

public class Woman implements People{
    @Override
    public void name() {
        System.out.println("name: Woman");
    }
}

3: 构建工厂

public class PeopleFactory {
    public People getPeople(int gender){
        if (gender==0){
            return new Man();
        }else{
            return new Woman();
        }
    }

    public static void main(String[] args) {
        PeopleFactory peopleFactory = new PeopleFactory();
        People people = peopleFactory.getPeople(0);
        people.name();
        People people1 = peopleFactory.getPeople(1);
        people1.name();
    }
}

优缺点:

  1. 能够从具体的产品类中解耦
  2. 可以运行时动态创建对象,可以不必关心对象的实例化过程
  3. 扩展性差,每次新增产品都需要修改工厂的代码
  4. 只能创建实现相同接口的类