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

初识工厂模式

程序员文章站 2024-01-10 09:25:22
...

工厂模式

工厂模式:属于创建型模式,定义一个创建对象的接口,工厂模式使其创建过程延迟到子类进行,让其子类自己决定实例化哪一个工厂类。

在我看来,你要买一辆好车,你直接去4s店买就行了,不用知道谁造的*,怎么造的,你只用知道,美观,舒适,体验度高就行了。

应用实例

首先定义好创建的接口,规定好造的东西得是车吧,总不能你买苹果电脑去4s店吧(当然你可以去试试),而且等我有了钱,能够造成很多种车的时候,只需要怎么造,我就能很快的生产了,总不能有了新想法就造个工厂吧,那得多糟践呀。

	//我们定义好咱厂只能生产汽车
	public interface Car {
    	void produce();
	}

规定只能造车了,得知道怎么造车吧。

public class BWM implements Car{
//先规定如何造宝马
    @Override
    public void produce() {
        System.out.println("produce BWM!!!");
    }
}

我可发明了两种车的制作方法。

public class Mercedes implements Car{
//在规定如何造奔驰
    @Override
    public void produce() {
        System.out.println("produce Mercedes!!!!");
    }
}

我的工厂我做主,宝马卖的好,我就造宝马,奔驰人们喜欢我就造奔驰,这样才能利益最大化呀。

public class Car_Factory {
//要啥造啥
    public Car getCar(Car car){
        if (car.getClass() == BWM.class){
            return new BWM();
        }else{
            return new Mercedes();
        }
    }
}

厂子建好了,来开始造吧,快速投入运营吧,不然没钱交房租了!!!

public class Car_FactoryDemo {

    public static void main(String[] args) {
        Car car1 = new Car_Factory().getCar(new BWM());//造宝马
        car1.produce();

        Car car2 = new Car_Factory().getCar(new Mercedes());//造奔驰
        car2.produce();
    }
}

这样需要车的人就不需要知道怎么造车了,保护了我的知识产权,终于正式投入运营了,祝开业大吉呀!!!!

总结

工厂模式是创建型模式的一种,主要解决的问题就是在客户端创建对象的时候不暴露创建逻辑,是一种较为常见的设计模式。

积土成山,风雨兴焉!!!!

相关标签: 工厂模式