>  기사  >  Java  >  JAVA 팩토리 패턴의 간단한 예

JAVA 팩토리 패턴의 간단한 예

高洛峰
高洛峰원래의
2016-12-15 14:37:101242검색

이제 햄 생산 공장을 시뮬레이션하는 간단한 사용 사례를 제시합니다. 공장에서는 여러 유형의 햄을 생산할 수 있습니다. 공장 인스턴스를 생성한 후 어떤 종류의 햄을 생산할지 지정하기만 하면 됩니다.
패키지 테스트;

interface Ham { //팩토리 모드 구현을 지원하는 인터페이스 정의
void show();//Ham에서 생산되는 다양한 제품 Factory Ham은 show()
}
public class FatoryModule {//다양한 유형의 Ham 제품에 사용되는 Factory 클래스
public Ham getHam(String HamType) throw Exception{// Factory 클래스 HAM을 생성하기 위한 객체의 움직임
if (Hamtype.equals ("HAMA") {
Return New Hama ();
}
Else if (Hamtype.equals ("HAMB" )) {
           return new HamB();
                                                               공장에서 생산 지시를 받은 경우; 일부 HAM 명령어가 현재 지원되지 않는 경우, 비정상적인 오류가 발생합니다.

}

Public Static Void Main (String [] ARGS) { //테스트 코드
FatoryModule fatorymodule = new FatoryModule();
try {
Ham myHam = fatorymodule.getHam("HamB");//다양한 형태의 Ham을 쉽게 생성할 수 있으며, 프로그램 구조와 코드 수정을 최소한으로

myHam.show();

} catch(예외 ex) {
ex.printStackTrace();//Exceptions를 추가로 처리해야 함
}
}
}

class HamA가 Ham을 구현함 { //HamA가 공장에서 생산하는 제품
public void show() {
System.out.println("You got a HamA.") ;
}

}


class HamB가 Ham을 구현합니다. { // 공장 HamB
public void show() {
System.out.println("HamB를 얻었습니다.");
}

}


class HamC는 Ham을 구현합니다. { // 공장에서 생산되는 세 번째 제품, HamC
public void show() {
System.out.println("You got a HamC.");
}

}

시연을 통해 프로그램을 통해 다음과 같은 결론을 얻었습니다.

팩토리 패턴이 적용되었으므로 팩토리 객체가 나에게 어떤 종류의 Ham을 생성하는지 알려 주기만 ​​하면 됩니다(즉, getHam() 메서드의 매개 변수 ) 그러면 HamX hamX=new HamX();를 작성하지 않고도 이 유형의 Ham을 얻을 수 있습니다. 필요한 Ham 객체가 수십 개 있는 경우 프로그램의 다른 위치에 생성된 경우 팩토리 패턴 코드를 사용하면 간단해 보일 것입니다. 다른 Ham이 필요한 모든 장소는 getHam()의 매개변수만 다릅니다. 그렇지 않으면 프로그램을 확장하고 유지 관리해야 할 때 수십 개의 새로운 문이 두통을 유발할 것입니다. 그리고 새로운 Ham 유형을 추가해야 하는 경우 팩토리 클래스에만 추가하면 됩니다.



JAVA 팩토리 패턴의 더 간단한 예제를 보려면 PHP 중국어 웹사이트에서 관련 기사를 주목하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.