2013年5月15日

C#中Virtual与override分别有什么用途

摘要: using System; class A { public A() { PrintFields(); } public virtual void PrintFields() {} } class B:A { int x=1; int y; public B() { y=-1; } public override void PrintFields() { Console.WriteLine( "x={0},y={1} ",x,y); } } 当使用new B()创建B的实例时,产生什么输出... 阅读全文

posted @ 2013-05-15 17:35 不悔的青春 阅读(4980) 评论(1) 推荐(3) 编辑

重写基类方法与隐藏基类方法的区别

摘要: 重写基类方法与隐藏基类方法的区别其实要分析二者的区别,就是分析override和new这两个关键字在控制类的版本上的区别。首先,我先列出本地MSDN 2008上与此有关的一些官方资料:“override(C# 参考)”:(ms-help://MS.MSDNQTR.v90.chs/dv_csref/html/dd1907a8-acf8-46d3-80b9-c2ca4febada8.htm)“new 修饰符(C# 参考)”:(ms-help://MS.MSDNQTR.v90.chs/dv_csref/html/a2e20856-33b9-4620-b535-a60dbce8349b.htm)“使用 阅读全文

posted @ 2013-05-15 17:16 不悔的青春 阅读(361) 评论(0) 推荐(0) 编辑

观察者模式生活中的一个应用

摘要: 场景:当公司每个月向你支付工资的时候,将会向你发送一条短信通知Step1:首先,我们需要定义一个委托,通过委托将两个类的交互进行了绑定,当公司转账的方法Gapes()调用后,触发委托类型的SaveMoney事件,而该事件将被委托给用户(User)的通知(Notify)方法处理// <summary> ///定义代理 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> public 阅读全文

posted @ 2013-05-15 09:34 不悔的青春 阅读(264) 评论(0) 推荐(0) 编辑

导航