C#基础关键字

1:override & new            
public class A { public virtual void Test() { Console.WriteLine("A Test()"); } } public class B : A { private new void Test() { Console.WriteLine("b Test()"); } } public class C : B { public override void Test() { Console.WriteLine("C Test()"); } }

new:
-->运算符:范围内存,初始化
-->修饰符:在子类中用 new 关键字修饰定义的与父类中同名的方法,叫覆盖。覆盖不会改变父类方法的功能
-->new约束:指泛型类声明中任意参数类型都要有无参构造函数,当与其他约束一起使用时,new约束必须在最后指定。
  public class   BaseDAL<T> : IDAL.IBaseDAL<T> where T : class,new()
    {}

2:this

-->引用类的当前实例,包括继承而来的方法,通常可以省略
-->将对象作为参数传递到其他方法
-->声明索引器
     public class Person
        {
            string[] PersonList = new string[10];
            public string this[int param]
            {
                get { return PersonList[param]; }
                set { PersonList[param] = value; }
            }
        }

原文地址:https://www.cnblogs.com/newcoder/p/5438793.html