你的位置:首页 > ASP.net教程

[ASP.net教程]每天一小段笔记


 知识点

  •   找出引用中可能需要变化之处,把它们独立出来,不要和那些不需要变化的代码混在一起。
  •   针对接口编程,而不是实现编程。
  •   多用组合,少用继承

示例

 1   public interface FlyBehavior 2   { 3     void Fly(); 4   } 5  6   class FlyWithWings:FlyBehavior 7   { 8     #region FlyBehavior 成员 9 10     public void Fly()11     {12       Console.WriteLine("会飞的鸭子");13     }14 15     #endregion16   }17 18  public class FlyNoWay:FlyBehavior19   {20     #region FlyBehavior 成员21 22     public void Fly()23     {24       Console.WriteLine("飞不起来的");25     }26 27     #endregion28   }

飞行行为
 1   public interface QuackBehavior 2   { 3     void Quack(); 4   } 5  6   class Quack:QuackBehavior 7   { 8     #region QuackBehavior 成员 9 10     void QuackBehavior.Quack()11     {12       Console.WriteLine("嘎!嘎!嘎!");13     }14 15     #endregion16   }17 18   class MuteQuack:QuackBehavior19   {20     #region QuackBehavior 成员21 22     public void Quack()23     {24       Console.WriteLine("世界一片安静");25     }26 27     #endregion28   }

叫行为
 1   public abstract class Duck 2   { 3     //将鸭子的行为通过组合的方式使用,而不是继承 4     FlyBehavior _flyBehavior; 5     QuackBehavior _quackBehavior; 6  7     public FlyBehavior FlyBehavior 8     { 9       set { _flyBehavior = value; }10     }11 12     public QuackBehavior QuackBehavior13     {14       set { _quackBehavior = value; }15     }16 17     public abstract void Display();18 19     public void PerformFly()20     {21       _flyBehavior.Fly();22     }23     public void PerformQuack()24     {25       _quackBehavior.Quack();26     }27   }

鸭子抽象类
1   class RedheadDuck:Duck2   {3     public override void Display()4     {5       Console.WriteLine("红头鸭");6     }7   }

实现类红头鸭
 1   class Program 2   { 3     static void Main(string[] args) { 4       Duck duck = new RedheadDuck() {  5         FlyBehavior=new FlyWithWings(), 6         QuackBehavior=new Quack() 7       }; 8       duck.Display(); 9       duck.PerformFly();10       duck.PerformQuack();11 12       Console.ReadKey();13     }14   }

深圳去厦门旅游报价跟团去厦门旅游多少钱几月去厦门旅游最好去厦门的旅游团价格去厦门旅游必去景点怡情谷漂流刺激吗?惠州怡情谷漂流注意什么? 怡情谷漂流带雨衣吗?惠州怡情谷漂流需要带什么? 怡情谷漂流一日游费用?惠州怡情谷漂流怎么收费? 怡情谷漂流小孩怎么收费?惠州怡情谷漂流适合多大儿童? 蒙古族的那达慕大会 厦门鼓浪屿不可错过特色美食 厦门鼓浪屿最佳旅游时间 中山公园门票_厦门 上海 武汉 北京 青岛 深圳中山公园门票 宁夏仙鹤楼:品尝正宗的清真菜 自驾阿尔山 在新春里阳光下拥抱 中国宁夏银川特色菜:丁香肘子 中国宁夏银川特色菜:手抓羊肉 深圳桔钓沙在哪?怎么去? 去深圳哪里买包包好? 2013年暑假深圳哪里好玩?暑假去哪玩? 深圳大鹏较场尾怎么去? 12061C562KAT4A Datasheet 12061C562KAT4A Datasheet AQ131M681JA1BE Datasheet AQ131M681JA1BE Datasheet AQ131M681JA1ME Datasheet AQ131M681JA1ME Datasheet 恐龙园夜公园门票 恐龙园夜公园门票 恐龙园夜公园门票 电白放鸡岛 电白放鸡岛 电白放鸡岛 可可托海门票 可可托海门票 可可托海门票