设计模式之简单工厂模式

简单工厂
定义:由一个工厂对象决定创建出哪一种产品类的实例
类型:创建型,但不属于GOF23种设计模式

·工厂类负责创建的对象比较少
·客户端(应用层)只知道传入工厂类型的参数对于如何创建对象(逻辑)不关心

优点:
只需要传入一个正确的参数,就可以获取你所需要的对象,而无需知道其创建的细节
缺点:
工厂类的职责相对过重,增加新的产品,需要修改工厂的判断逻辑,违背开闭原则

public abstract class Video {
    public abstract void produce();

}
public class javaVideo extends Video {

    @Override
    public void produce() {
        System.out.println("录制java课程视频");
    }
}
public class PythonVideo extends Video {
    @Override
    public void produce() {
        System.out.println("录制Python课程视频");
    }
}
public Video getVideo(String type){
        if("java".equalsIgnoreCase(type)){
            return new javaVideo();
        }else if("python".equalsIgnoreCase(type)){
            return new PythonVideo();
        }
        return null;
		public class Test {
    	public static void main(String[] args){
		VideoFactory videoFactory = new VideoFactory();
        Video video = videoFactory.getVideo("java");
        if (video==null){
            return;
        }
        video.produce();
        }
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章