欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

设计模式之工厂模式

程序员文章站 2022-06-13 12:57:52
...

设计模式之工厂模式
.工厂模式

工厂模式(Factory Pattern)是 Java 中最常用的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。

在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。

比如椅子、床等家具都是由家具工厂产出的。

实现:

定义一个接口,

/***
 * 家具 简单工厂模式
 */
public interface Furniture {

    /***
     * 使用家具方法
     */
    void useFurniture();
}

创建接口具体的实现类:

/***
 * 椅子
 */
public class Chair implements Furniture {


    @Override
    public void useFurniture() {

        System.out.println(" 椅子可以做的事情 ");

    }
}


/***
 * 床
 */
public class Bed  implements  Furniture{


    @Override
    public void useFurniture() {

        System.out.println(" 床可以做的事情 ");

    }
}

创建一个工厂,生成基于给定信息的实体类的对象。

/***
 * 家具工厂接口 简单工厂方法
 */
public class FurnitureFactory {


    /***
     * 创建具体的家具
     * @param furnitureName 家具名称
     * @return
     */
    public Furniture createFurniture(String furnitureName){

        if("chair".equals(furnitureName)){
            return new Chair();
        }else if("bed".equals(furnitureName)){
            return new Bed();
        }

        return null;

    }
}

使用该工厂,通过传递类型信息来获取实体类的对象。

/***
 * 工厂模式调用类
 */
public class FactoryDemo {

    public static void main(String[] args) {

        FurnitureFactory furnitureFactory = new FurnitureFactory();

        Furniture chair = furnitureFactory.createFurniture("chair");

        chair.useFurniture();


        Furniture bed = furnitureFactory.createFurniture("bed");

        bed.useFurniture();;


    }
}

设计模式之工厂模式