工厂模式Factory

工厂模式Factory

存在意义

  • 轻松方便地构造对象实例,而不必关心构造对象实例的细节和复杂过程

简单工厂(代码实现)

  • 说明: 一个工程创建奥迪和奔驰实例
/**汽车接口
 * @title
 * @description
 * @since JDK1.8
 */
public interface Car {

    public void run();
}
/**
 * @title
 * @description
 * @since JDK1.8
 */
public class Aodi implements Car {

    /*
     * (非 Javadoc)
     * 
     * @see com.example.demo.factory.Car#run()
     */
    @Override
    public void run() {
        System.out.println("奥迪在run");

    }

}
/**
 * @title
 * @description
 * @since JDK1.8
 */
public class Benchi implements Car {

    /*
     * (非 Javadoc)
     * 
     * @see com.example.demo.factory.Car#run()
     */
    @Override
    public void run() {
        System.out.println("奔驰在run");
    }

}
/**汽车工厂
 * @title
 * @description
 * @since JDK1.8
 */
public class CarFactory {

    public static Car getCar(String carType) {
        Car car = null;
        switch (carType) {
        case "aodi":
            car = new Aodi();
            break;
        case "benchi":
            car = new Benchi();
            break;
        default:
            break;
        }
        return car;
    }
}
/**测试类
 * @title
 * @description
 * @since JDK1.8
 */
public class Main {
    public static void main(String[] args) {
        // Car aodi = new Aodi();
        // Car benchi = new Benchi();
        // aodi.run();
        // benchi.run();

        Car car1 = CarFactory.getCar("aodi");
        Car car2 = CarFactory.getCar("benchi");

        car1.run();
        car2.run();
    }
}

工厂模式

  • 说明: 简单工厂是一个工厂创建不同品牌的车,工厂模式则是不同品牌的车拥有自己的工厂

  • 代码实现: 创建奥迪和奔驰自己的工厂,实现同一个大Factory.

抽象工厂

  • 待补充
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章