1.实例化对象不需要new,用工厂模式
2.工厂模式分为(简单工厂模式,工厂方法模式,抽象工厂模式)
package com.wuming.factory.simple; public interface Car { public void name(); }
package com.wuming.factory.simple; //简单工厂模式(也可称静态工厂模式,弊端:增加一个产品大众,不修改原来代码,做不到) //不满足开闭原则 public class CarFactory { public static Car getCar(String car){ if (car.equals("五菱")){ return new WuLing(); }else if(car.equals("特斯拉")){ return new Tesla(); }else{ return null; } } }
package com.wuming.factory.simple; public class Consumer { public static void main(String[] args) { //1.new /* Car car = new WuLing(); Car car2 = new Tesla();*/ //2.使用工厂创建 Car car = CarFactory.getCar("五菱"); Car car2 = CarFactory.getCar("特斯拉"); car.name();//五菱 car2.name();//特斯拉 } }
package com.wuming.factory.simple; public class Dazhong implements Car{ @Override public void name() { System.out.println("大众"); } }
package com.wuming.factory.simple; public class Tesla implements Car{ @Override public void name() { System.out.println("特斯拉"); } }
package com.wuming.factory.simple; public class WuLing implements Car{ @Override public void name() { System.out.println("五菱"); } }