디자인 패턴의 공장 패턴 간단한 공장 패턴
공장 패턴의 기원 :
우리는 사용 목적, 새로운 작업의 사용을 만들 때. 경우에 당신은 새로운 회의를 만들기 위해 여러 개체를 사용하고 있습니다. 따라서, 모델은 공장 새로운 운영 에이전트를 모델링하는 데 사용됩니다. 공장 모델의 기원에 따르면, 우리는 공장 모델 스키마를 만들 속하는 것을 볼 수 있습니다. 객체를 생성 할 수있는 가장 좋은 방법을 제공한다.
출처 : 카이거 자바 (kaigejava)
주요 공장 패턴 분류 :
간단한 공장 패턴, 팩토리 메소드 패턴, 추상 팩토리 패턴
간단한 공장 패턴 :
간단한 공장 패턴은 23 개 디자인 패턴에 속하지 않습니다. 또한 정적 팩토리 메소드로 알려진 간단한 공장 패턴은 공장 모델 가족이 모델로 사용하는 것이 가장 간단하다. 또한 다른 식물의 실현의 특수 모드로 이해 될 수있다.
어떻게 이해?
예를 들면 : 팩토리 클래스, 추상 클래스의 제품.
실생활의 예 : 국수 가게, 우리는 국수보다 더 생성 할 수 있습니다.
예를 들면 : 토마토 달걀 국수를 만들 수 있습니다 국수, 쇠고기 국수, 국수, 호각 얼굴, biangbiang 표면 건조 국수.
우리는이 시나리오를 시뮬레이션 할 수 있습니다 :
의 프로젝트 구조를 살펴 보자 :
설명 :
1 : 국수 인터페이스 클래스
2 : 특정 구현 클래스 국수
3 : 간단한 팩토리 클래스 (국수 객체)
4 : 시험 유형
의 국수 인터페이스 클래스를 살펴 보자 :
INoodlesInterface
: 토마토와 달걀 국수 내부 객체 - 우리는보고, 국수 구현 클래스를 취할
공용 클래스 TomatoAndEggNoodles는 구현 INoodlesInterface을 {
개인 문자열 noodlesName ;
공공 TomatoAndEggNoodles () {}
공공 TomatoAndEggNoodles (문자열 noodlesName) {
이 . noodlesName = noodlesName;
}
@보수
public void noodlesdescription() {
System.out.println("大爷,您的"+this.noodlesName+"价格为:10元。");
}
}
其他具体面条实现类里面类似。这里就不一一贴出来了。
我们来看看面馆对象:
里面由三部分:
菜单部分、根据菜单序号制作面条、根据面条名称制作面条。
我们来看看根据菜单序号制作面条的:
public static INoodlesInterface makeNoodlesByMenuType(int noodletType){
switch (noodletType){
case NOODLES_TYPE_1:
return new TomatoAndEggNoodles("西红柿鸡蛋面");
case NOODLES_TYPE_2:
return new HandPulledNoodleSoupWithBeef("牛肉拉面");
case NOODLES_TYPE_3:
return new HandPulledNoodleSoupWithBeef("刀削面");
case NOODLES_TYPE_4:
return new NoodleWithPork("哨子面");
case NOODLES_TYPE_5:
return new BiangBiangNoodles("biangbiang面");
case NOODLES_TYPE_6:
return new HotAndDryNoodles("热干面");
default:
return new HotAndDryNoodles("热干面");
}
}
另一个方法类似。
查看测试类:
查看运行结果:
运行结果,达到我们预期的。
现在我们来总结下简单工厂模式:
简单工厂模式几个角色:
1:共有的抽象父类或者接口。如:司小司面馆的面条接口对象
2:继承或是实现该接口的具体子类。如:西红柿鸡蛋面、biangbiang面等
3:创建对象的简单工厂类。如:司小司的面馆
이벤트를 트리거 :
메뉴 또는 국수 이름의 수에 의해 생성 된 트리거 클래스 팩토리 객체입니다.
간단한 공장 패턴 기능을 살펴 보자 :
클래스를 통해. 콘크리트 클래스를 사용하여 추상 클래스 인터페이스 또는하지를 만들 수있는 중요한 방법입니다 문 스위치 문을 판단하고, 따라서 해당 제품을 만들 수 있다고합니다.
연락 카이거 - "카이거 자바 (kaigejava)
개인 블로그 : www.kaigejava.com
그 중 중요한 방법의 생성은 일반적으로 정적이다. 그래서, 간단한 공장 패턴은 정적 공장으로 알려져있다.