Java 简单工厂模式
## 介绍
简单工厂模式又称静态工厂模式。
简单工厂模式由工厂类角色、抽象产品角色和具体产品角色组成。
工厂类角色是本模式的核心,含有一定的商业逻辑和判断逻辑,它往往由一个具体类实现。
抽象产品角色一般是具体产品继承的父类或者实现的接口,由接口或者抽象类来实现。
具体产品角色由一个具体类实现。
## 代码
```java
// 车的父类
interface Car {
// 开车
public void driver();
}
// 奔驰车
class Benz implements Car {
@Override
public void driver() {
System.out.println("今天咱开奔驰!");
}
}
// 自行车
class Bike implements Car {
@Override
public void driver() {
System.out.println("唉,现在经济危机,只能骑自行车了呀!");
}
}
// 宝马
class Bmw implements Car {
@Override
public void driver() {
System.out.println("今天开宝马吧!");
}
}
// 车的工厂
class Driver {
public static Car driverCar(String s) throws Exception {
// 判断传入参数返回不同的实现类
if (s.equalsIgnoreCase("Benz")) {
return new Benz();
} else if (s.equalsIgnoreCase("Bmw")) {
return new Bmw();
} else if (s.equalsIgnoreCase("Bike")) {
return new Bike();
} else {
throw new Exception();
}
}
}
// 操作工厂模式的类
public class TextSimpleFactory {
public static void main(String[] args) {
try {
// 调用方法返回车的实例
Car car = Driver.driverCar("Bike");
System.out.println("经理,今天开什么车呀?");
car.driver();// 调用方法开车
} catch (Exception e) {
System.out.println("开车出现问题......");
}
}
}
```