工厂模式Factory
存在意义
- 轻松方便地构造对象实例,而不必关心构造对象实例的细节和复杂过程
简单工厂(代码实现)
- 说明: 一个工程创建奥迪和奔驰实例
/**汽车接口
* @title
* @description
* @since JDK1.8
*/
public interface Car {
public void run();
}
/**
* @title
* @description
* @since JDK1.8
*/
public class Aodi implements Car {
/*
* (非 Javadoc)
*
* @see com.example.demo.factory.Car#run()
*/
@Override
public void run() {
System.out.println("奥迪在run");
}
}
/**
* @title
* @description
* @since JDK1.8
*/
public class Benchi implements Car {
/*
* (非 Javadoc)
*
* @see com.example.demo.factory.Car#run()
*/
@Override
public void run() {
System.out.println("奔驰在run");
}
}
/**汽车工厂
* @title
* @description
* @since JDK1.8
*/
public class CarFactory {
public static Car getCar(String carType) {
Car car = null;
switch (carType) {
case "aodi":
car = new Aodi();
break;
case "benchi":
car = new Benchi();
break;
default:
break;
}
return car;
}
}
/**测试类
* @title
* @description
* @since JDK1.8
*/
public class Main {
public static void main(String[] args) {
// Car aodi = new Aodi();
// Car benchi = new Benchi();
// aodi.run();
// benchi.run();
Car car1 = CarFactory.getCar("aodi");
Car car2 = CarFactory.getCar("benchi");
car1.run();
car2.run();
}
}
工厂模式
说明: 简单工厂是一个工厂创建不同品牌的车,工厂模式则是不同品牌的车拥有自己的工厂
代码实现: 创建奥迪和奔驰自己的工厂,实现同一个大Factory.
抽象工厂
- 待补充