简单的工厂模式 ( 1.抽象产品角色 2.具体产品角色 3.工厂类角色 )
public class Factory {
//抽象产品角色
public interface Car{
public void drive();
}
//具体产品角色
public class Benz implements Car{
public void drive() {
System.out.println("Driving Benz ");
}
}
//工厂类角色
public class Driver{
public Car driverCar(String s){
if(s.equalsIgnoreCase("Benz")){
return new Benz();
}
return null;
}
}
}
工厂方法模式 ( 1.抽象产品角色 2.具体产品角色 3.抽象工厂类角色 4.具体工厂类角色)
public class Factory {
//抽象产品角色
public interface Car{
public void drive();
}
//具体产品角色
public class Benz implements Car{
public void drive() {
System.out.println("Driving Benz ");
}
}
//抽象工厂类角色
public interface Icar{
public Car getCar();
}
//具体工厂类角色
public class BenzFactory implements Icar{
@Override
public Car getCar() {
return new Benz();
}
}
}
工厂设计模式:就是用来产生对象的。通过反射读取配置文件产生对象。
工厂方法模式应用场景:
1.类不知道自己要创建哪一个对象
2.类用它的子类来指定创建哪个对象
3.客户需要清楚创建了哪一个对象