工厂模式:工厂方法把简单工厂的内部逻辑判断移动客户端代码来进行,需要添加功能,本来需要改工厂类,现在变为改客户端
/**
* 工厂模式:
* 关键
* 在简单工厂的基础上再抽象一层,工厂也抽象化
* AbstractFactory接口:方法
* ConcreteFacotry类:实现AbstractFactory接口,返回对应的具体类
* @author zbl
*
*/
public class FactoryCustomer {
public static void main(String[] args) {
AbstractFactory factory = new ConcreateFactoryA();
factory.CreateStudent();
}
}
interface AbstractFactory{
Student CreateStudent();
}
class ConcreateFactoryA implements AbstractFactory{
@Override
public Student CreateStudent() {
return new GoodStudent();
}
}
class Student {}
class GoodStudent extends Student{}