先写程序,在来解释简单工厂和工厂方法模式。
1、定义一个汽车接口
接口里面定义一个方法:start()
2、实现该接口的汽车
奔驰
奥迪
到此,已经有2种汽车实现了汽车接口
我们可以通过自己new不同的对象,从而创建不同对象的实例调用共同的start方法。
这是我们就会想,是不是可以把产生汽车的过程放在一个工厂里面,而我们调用的时候只需要告诉工厂我们需要哪种汽车,工厂就返回给我们该汽车呢?那么我们就创建该工厂。
工厂接受传递过来的汽车的名称,返回该汽车的实例
这时候,我们就不需要自己new汽车了,只需要告诉工厂我们需要Audi,那么工厂就返回我们