第十章 定义类成员

  1. 规范:.net framework 中的公共字段、公共属性以PascalCasing形式来命名。
  2. 字段可以使用关键字readonly,表示这个字段自能在执行构造函数的过程中赋值,或由初始化赋值语句赋值。
  3. virtual & abstract & override:http://www.cnblogs.com/David-Huang/archive/2012/07/24/2606697.htm
  4. 自动属性:public int MyInt { get;  set; }
  5. 隐藏基类方法(接口中用法相同):
     1    public class MyBaseClass
     2       {
     3           public void DoSth()
     4           {
     5               Console.WriteLine("BaseClass");
     6           }
     7       }
     8   
     9       public class MyDerivedClass : MyBaseClass
    10       {
    11           new public void DoSth()
    12           {
    13               Console.WriteLine("DerivedClass");
    14           }
    15       }
  6. base:在派生类内部访问基类成员。
  7. this:运用this可以一眼看出引用的是成员,而不是局部变量。(增加易读性)
  8. 可以在基类上实现接口成员;继承一个实现给定接口的基类,就意味着派生类隐式地支持这个接口。
  9. 可以由类显示地实现接口成员。如果这么做,该成员就只能通过接口来实现,不能通过类来访问。
     1 class Program
     2     {
     3         static void Main(string[] args)
     4         {
     5             MyClass mycls = new MyClass();            
     6             IMyInterface myInterface = mycls;
     7             myInterface.DoSomething();
     8             Console.ReadKey();
     9         }
    10     }
    11 
    12     public interface IMyInterface
    13     {
    14         void DoSomething();
    15     }
    16 
    17     public class MyClass : IMyInterface
    18     {
    19         void IMyInterface.DoSomething()
    20         {
    21             Console.WriteLine("IMyInterface.DoSomething");     
    22         }
    23 
    24         public void DoSomethingElse()
    25         {
    26             Console.WriteLine("do");           
    27         }
    28     }
  10. partial:定义部分类,部分方法

  习题:https://files.cnblogs.com/David-Huang/C10.zip

posted @ 2012-07-24 16:42  David Huang  阅读(202)  评论(0编辑  收藏  举报