简单工厂模式,请跳转到我的另一篇博客【工厂模式】简单工厂模式-简单例子-优快云博客
四、工厂方法模式
(1)这部分还是不变,创建一个Car接口,和两个实现类。
public interface Car {
void name();
}
public class WuLing implements Car{
@Override
public void name() {
System.out.println("五菱");
}
}
public class Tesla implements Car{
@Override
public void name() {
System.out.println("特斯拉");
}
}
(2)把车工厂提取成一个接口,
public interface CarFactory {
Car getCar();
}
public class TeslaFactory implements CarFactory{
@Override
public Car getCar() {
return new Tesla();
}
}
public class WuLingFactory implements CarFactory{
@Override
public Car getCar(){
return new WuLing();
}
}
(3)这样的话,我再新增一种新车的时候就很方便了。
public class Mobai implements Car {
@Override
public void name(){
System.out.println("mobai");
}
}
public class MobaiFactory implements CarFactory{
@Override
public Car getCar() {
return new Mobai();
}
}
(4)创建一个Customer类,
public class Customer {
public static void main(String[] args) {
Car car1 = new WuLingFactory().getCar();
Car car2 = new TeslaFactory().getCar();
car1.name();
car2.name();
Car car3 = new MobaiFactory().getCar();
car3.name();
}
}