工厂模式介绍 1.工厂模式? 工厂设计模式是最常见的设计模式之一,在工厂模式中,提供一种最佳的创建对象的方式,最大程度的实现代码的解耦。 工厂模式的优缺点: 优点: 高度解耦,不需要再去new对象; 扩展性高:当你想增加一个产品,只需要扩展工厂类,并增加一个产品即可; 使用简单:屏蔽了产品的具体实现,使用者只用关注产品的接口即可; 缺点: 每次增加一个产品的时候都需要新增一个实现类,这样下来类的数量不断增加,增加了系统复杂度; 2.工厂模式的简单实现: 1.一个接口: public interface Car { void run(); } 2.接口的实现类对象: 实现类1: public class Benz implements Car { @Override public void run() { System.out.println("我买了一辆奔驰,贼高端!!!"); } } 实现类2: public class Ferrari implements Car { @Override public void run() { System.out.println("我买了一辆法拉利, 跑的贼快!!!"); } } 3.工厂类: public class CarFactory { //对外提供方法,便于外界获取实例对象 public Car getInstance(String brand) { if (brand == null) { return null; } if ("Ferrari".equals(brand)) { return new Ferrari(); } else if ("Benz".equals(brand)) { return new Benz(); } return null; } } 4.测试: public class CarTest { public static void main(String[] args) { //创建工厂对象 CarFactory carFactory = new CarFactory(); //获取对象 Car benz = carFactory.getInstance("Benz"); benz.run(); } }