자바 디자인 모델 의 공장 모델

장면 설명
기기 데이터 파일 의 형식 은 Pdf,Word,Excel 등 여러 가 지 를 포함 하고 서로 다른 형식의 파일 은 데이터 수집 방식 이 다 르 기 때문에 기기 데이터 수집 인 터 페 이 스 를 정의 하고 PDF,Excel 등 서로 다른 데이터 수집 류 를 정의 하여 이 인 터 페 이 스 를 실현 한다.
공장 류 를 통 해 서로 다른 방법 을 호출 하여 서로 다른 기기 데이터 수집 류 를 얻 고 인터페이스 방법 을 호출 하면 된다.
공장 모드 를 사용 하지 않 으 면 new 의 서로 다른 채집 대상 이 필요 하고 공장 모드 를 사용 하면 new 의 생 성 방식 을 숨 깁 니 다.
다음 그림 에서 보 듯 이:

2.예시 코드
계기 데이터 수집 인터페이스:

package lims.designpatterndemo.factorydemo;

public interface EquipmentDataCapture {
  public String capture(String filePath);
}

PDF 파일 데이터 수집 클래스:

package lims.designpatterndemo.factorydemo;

public class PdfFileCapture implements EquipmentDataCapture{

  @Override
  public String capture(String filePath) {
    return "PDF file content";
  }
}
Excel 파일 데이터 수집 클래스:

package lims.designpatterndemo.factorydemo;

public class ExcelFileCapture implements EquipmentDataCapture{

  @Override
  public String capture(String filePath) { 
    return "Excel File Content";
  }
}

공장 종류:

package lims.designpatterndemo.factorydemo;

public class EquipmentDataCaptureFactory {

  public static EquipmentDataCapture getPdfFileCapture(){
    return new PdfFileCapture();
  }
  
  public static EquipmentDataCapture getExcelFileCapture(){
    return new ExcelFileCapture();
  }
}

호출 예시:

package lims.designpatterndemo.factorydemo;

public class FactoryDemo {

  public static void main(String[] args) {
    EquipmentDataCapture edc = EquipmentDataCaptureFactory.getPdfFileCapture();
    edc = EquipmentDataCaptureFactory.getExcelFileCapture();
    String fileContent = edc.capture("");
    System.out.println(fileContent);
  }
}
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.

좋은 웹페이지 즐겨찾기