zoukankan      html  css  js  c++  java
  • 设计模式 抽象工厂

    今天看了第一个Abstract Factory, 自己尝试写了一个Demo, 不知道理解得正确否, 请指教! 谢谢
    抽象铸币厂(生产money)
    public abstract class MoneyMaker
    {
        
    public abstract Ten MakeTen();
        
    public abstract Hundred MakeHundred();
    }
    中国的铸币厂(能生产RMB)
    public class ChinaMoneyMaker : MoneyMaker
    {
        
    public override Ten MakeTen()
        
    {
            
    return new RMBTen();
        }

            
        
    public override Hundred MakeHundred()
        
    {
            
    return new RMBHundred();
        }

    }
    美国的铸币厂(能生产美元)
    public class UsMoneyMaker : MoneyMaker
    {
        
    public override Ten MakeTen()
        
    {
            
    return new DollarTen();
        }

        
        
    public override Hundred MakeHundred()
        
    {
            
    return new DollarHundred();
        }

    }
    十元的货币(抽象基类,有支付的功能)
    public abstract class Ten
    {
        
    public abstract void Pay();
    }
    百元的货币
    public abstract class Hundred
    {
        
    public abstract void Pay();
    }
    人民币的十元
    public class RMBTen : Ten
    {
        
    public override void Pay()
        
    {
            Console.WriteLine(
    "10 RMB have been pay.");
        }

    }
    人民币的百元, 美元的十元, 美元的百元 (略...)
    测试程序
    public class App
    {
        
    public static void Main()
        
    {
            MoneyMaker mm 
    = new ChinaMoneyMaker();
            Ten t 
    = mm.MakeTen();
            t.Pay();
            Hundred h 
    = mm.MakeHundred();
            h.Pay();
            mm 
    = new UsMoneyMaker();
            t 
    = mm.MakeTen();
            t.Pay();
            h 
    = mm.MakeHundred();
            h.Pay();
            Console.ReadLine();
        }

    }

    源程序下载 AbstractFactory Demo

  • 相关阅读:
    jQuery扩展extend一
    json对象的操作,json工具
    typeof操作符的返回值
    jacksonall的使用,解析json
    jQuery的扩展
    An Introduction to Computer Thinking
    lazy初始化和线程安全的单例模式
    Compiler Principle
    Lineare Algebra
    Mathematik
  • 原文地址:https://www.cnblogs.com/Dabay/p/361660.html
Copyright © 2011-2022 走看看