kwj

走越远,路越艰!

常用链接

统计

最新评论

简单工厂模式

public interface Fruit  //水果接口
{
    void grow();
    void harvest();
    void plant();
}

public class Apple implements Fruit
{
   private int treeAge;
   public grow(){}
   public harvest(){}
   public plant(){}
}
public class Grape implements Fruit
{
    private boolean seedless;
    public void grow(){}
    public void harvest(){}
    public void plant(){}
}

public class FruitGardener   //园丁
{
    public static Fruit factory(String which)
    {
       if(which.equalsIgnoreCase("apple")){
          return new Apple();
        }
       else if(which.equalsIgnoreCase("grape")){
          return new Grape();
        }
    }
}
所涉及到的角色:工厂角色,抽象产品角色,具体产品角色。
统一由FruitGardener.factory的工厂方法来生产。该模式如果需要加入新的水果类时,工厂的代码需要改变。园丁成为了核心人物,如果他们不能工作,整个过程都受影响。

posted on 2008-01-23 10:02 木剑 阅读(169) 评论(0)  编辑  收藏 所属分类: 设计模式


只有注册用户登录后才能发表评论。


网站导航:
博客园   IT新闻   Chat2DB   C++博客   博问