단순 팩토리 모드

3330 단어
단순 공장 모델의 구성 공장류(Creator) 역할: 이 역할을 맡은 것은 단순 공장 모델의 핵심이고 응용과 밀접한 관계를 가진 상업 논리를 포함한다.공장 클래스는 클라이언트의 직접 호출 아래 제품 대상을 만들고 종종 하나의 구체적인 클래스로 이루어진다.추상 제품(Product) 역할: 이 역할을 맡은 클래스는 단순 공장 모델이 만든 대상의 부류 또는 그들이 공동으로 가지고 있는 인터페이스이다.추상적인 제품 역할은 하나의 인터페이스나 추상적인 유형으로 실현할 수 있다.구체적인 제품(Concrete Product) 역할: 간단한 공장 모델이 만든 모든 대상은 이 역할의 실례이고 구체적인 제품 역할은 하나의 구체적인 유형으로 이루어진다.
 1 /*  (Creator) */
 2   package simplefactory;  3 public class Creator  4 {  5     public static Product createProduct(String str)  6  {  7         if("A".equals(str))  8  {  9             return new ConcreteProductA(); 10  } 11         else if("B".equals(str)) 12  { 13             return new ConcreteProductB(); 14  } 15         
16         return null; 17  } 18 } 19 
20 /* (Product) */
21 package simplefactory; 22 public abstract class Product 23 { 24 
25 } 26 
27 /* (Concrete Product) */
28 package simplefactory; 29 public class ConcreteProductA extends Product 30 { 31 
32 } 33 /* (Concrete Product) */
34 package simplefactory; 35 public class ConcreteProductB extends Product 36 { 37 
38 } 39 
40 package simplefactory; 41 public class Client 42 { 43     public static void main(String[] args) 44  { 45         Product productA = Creator.createProduct("A"); 46         
47  System.out.println(productA.getClass().getName()); 48         
49         Product productB = Creator.createProduct("B"); 50         
51  System.out.println(productB.getClass().getName()); 52  } 53 }

좋은 웹페이지 즐겨찾기