设计模式学习小结

设计模式小结-工厂方法模式

2017-10-06  本文已影响5人  r09er

工厂方法模式模式小结:

工厂方法模式是简单工厂模式的延伸,它继承了简单工厂模式的优点,同时还弥补了简单工厂模式的不足。

优点:

适用场景

示例场景

有一款图片读取解析软件,读取各种不同类型的图片格式并解析,针对每一种图片格式都设计一个图片读取器,如GIF图片读取器用于读取GIF格式的图片、JPG图片读取器用于读取JPG格式的图片。

UML类图

示例代码

//图片接口
public interface Picture {
    //图片的解析方法,解析png,jpg,gif等图片
    void analysis();
}
//具体图像对象
public class JPGPicture implements Picture {
    @Override
    public void analysis() {
        System.out.println("解析JPG图片");
    }
}
//抽象的图片工厂方法
public abstract class PictureFactory {
    //读取图片方法
    public abstract Picture readPicture();

    public void analysisPicture(){
        Picture picture = this.readPicture();
        picture.analysis();
    }
}
//具体的图片工厂
public class JPGFactory extends PictureFactory{

    @Override
    public Picture readPicture() {
        System.out.println("读取jpg图片");
        return new JPGPicture();
    }
}
//客户端调用,使用读取XML配置,反射获取实现类的方式
 PictureFactory pictureFactory = (PictureFactory) XMLUtil.getBean();
        pictureFactory.analysisPicture();

上一篇下一篇

猜你喜欢

热点阅读