简单工厂模式

终于理解.
//接口
public interface IPersion
{
    void action();
}

//男人类
public class Man:IPersion
{
    
public void action()
    
{
        Console.Writeline(
"抽烟");
    }

}

//女人类
public class Woman:IPersion
{
    
public void action()
    
{
        Console.Writeline(
"化妆");
    }

}

//工厂方法类
public class PersionFactory
{

//这里的逻辑处理可以改为
//将这个工厂方法类设为抽象类
//另外用一个Man和WoMan工厂类续承些类
//这样可以相对应new了
//即封装变化点
    
public IPersion Factory(int i)
    
{
         
if(i == 1)
         
{
             
return new Woman().action();
         }

         
else
         
{
             
return new Man().action();
         }

    }

}

//应用层
public class Application
{
    
private void Man
    
{
         
new PersionFactory().Factory(10);
    }

    
private void Woman
    
{
         
new PersionFactory().Factory(1);
    }

}
posted on 2005-11-28 21:20  泽来  阅读(596)  评论(0编辑  收藏  举报