工厂方法作业

题目:某软件公司欲开发一个数据格式转换工具,可以将不同数据源如txt文件、数据库、Excel表格中的数据转换成XML格式。为了让系统具有更好的扩展性,在未来支持新类型的数据源,开发人员使用工厂方法模式设计该转换工具的核心类,客户端只需使用工厂类即可获得具体的转换类对象,再调用其相应方法实现数据转换操作。绘制该类图,并选择一种语言编程实现。


 

设计的类图如下图所示:

                                        

 

 

 

利用java实现代码如下:
package 工厂作业;

public interface dataFactory {

    public void importData();

}

public interface transformer {

    public dataFactory transform();

}

//数据导入
public class txtData implements dataFactory {
    public void importData() {
        System.out.println("txt数据导入");
    }

}

public class databaseData implements dataFactory{
    public void importData() {
        System.out.println("数据库数据导入");
    }

}

public class excelData implements dataFactory{
    public void importData() {
        System.out.println("excel数据导入");
    }

}
//数据格式转换
public class txtTransform implements Transformer{
    public dataFactory transform() {
        dataFactory data = new txtData();
        System.out.println("txt数据成功转换");
        return data;
    }
}

public class databaseTransform implements Transformer {
    public dataFactory transform() {
        dataFactory data = new databaseData();
        System.out.println("database数据成功转换");
        return data;
    }
}

public class excelTransform implements Transformer {
    public dataFactory transform() {
        dataFactory data = new excelData();
        System.out.println("excel数据成功转换");
        return data;
    }
}

public class Client {
    public static void main(String[] args) {
        Transformer TXc = new txtTransform();
        TXc.transform();

        Transformer DBc = new databaseTransform();
        DBc.transform();

        Transformer EXc  = new excelTransform();
        EXc.transform();
    }
}

 

posted @ 2020-03-25 13:21  yeungYeung洋  阅读(390)  评论(0)    收藏  举报