<强>一、场景描述强>
仪器数据文件的格式包含Pdf、Word、Excel等多种,不同种格式的文件其数据的采集方式不同,因此定义仪器数据采集接口,并定义Pdf、Excel等不同的数据采集类实现该接口。
通过工厂类,调用不同的方法,获取不同的仪器数据采集类,调用接口方法即可。
如不使用工厂模式,则需要新不同的采集类对象,使用工厂模式则隐藏了新的的创建方式。
如下图所示:
<强>二、示例代码强>
仪器数据采集接口:
包lims.designpatterndemo.factorydemo; 公共接口EquipmentDataCapture { 捕捉公共字符串(字符串filePath); } >之前PDF文件数据采集类:
包lims.designpatterndemo.factorydemo; 公共类PdfFileCapture实现EquipmentDataCapture { @Override 公共字符串捕获(字符串filePath) { 返回“PDF文件内容”; } } >之前Excel文件数据采集类:
包lims.designpatterndemo.factorydemo; 公共类ExcelFileCapture实现EquipmentDataCapture { @Override 公共字符串捕获(字符串filePath) { 返回“Excel文件内容”; } } >之前工厂类:
包lims.designpatterndemo.factorydemo; 公开课EquipmentDataCaptureFactory { 公共静态EquipmentDataCapture getPdfFileCapture () { 返回新PdfFileCapture (); } 公共静态EquipmentDataCapture getExcelFileCapture () { 返回新ExcelFileCapture (); } } >之前调用示例:
包lims.designpatterndemo.factorydemo; 公开课FactoryDemo { 公共静态void main (String [] args) { EquipmentDataCapture edc=EquipmentDataCaptureFactory.getPdfFileCapture (); edc=EquipmentDataCaptureFactory.getExcelFileCapture (); 字符串fileContent=edc.capture (" "); System.out.println (fileContent); } } >之前以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
Java设计模式之工厂模式