事先准备该链接中的类:
https://www.jianshu.com/p/c5510507cda7
demo
//工厂接口,定义了所有工厂的执行标准
public interface Factory {
//符合汽车上路标准
//尾气排放标准
//电子设备安全系数
//等
Car getCar();
}
public class AudiFactory implements Factory {
@Override
public Car getCar() {
return new Audi();
}
}
public class BenzFactory implements Factory {
@Override
public Car getCar() {
return new Benz();
}
}
public class BmwFactory implements Factory {
@Override
public Car getCar() {
return new Bmw();
}
}
public class Test {
public static void main(String[] args) {
//工厂方法模式
//各自产品的生产商,都有各自的工厂
//生产工艺,生产的高科技程度都是不一样的
//需要用户关系这个产品的生产商,这个对用户不太合理
//增加了代码的使用复杂度
Factory audiFactory = new AudiFactory();
System.out.println(audiFactory.getCar());
Factory benzFactory = new BenzFactory();
System.out.println(benzFactory.getCar());
Factory bmwFactory = new BmwFactory();
System.out.println(bmwFactory.getCar());
}
}
网友评论