码迷,mamicode.com
首页 > 其他好文 > 详细

简单工厂模式(simple factory )

时间:2015-09-20 11:41:43      阅读:125      评论:0      收藏:0      [点我收藏+]

标签:

简单工厂模式的构成
工厂类   (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 }

 

简单工厂模式(simple factory )

标签:

原文地址:http://www.cnblogs.com/daneres/p/4823109.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!