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

[ASP.net教程]C#基础知识之new关键字


  • 运算符

      new一个Class时,new完成了两方面内容:一是调用new class命令来为实例在托管堆中分配内存;二是调用构造函数来实现对象初始化。

  • 修饰符

     显示隐藏从基类继承来的成员。虽然可以不用new修饰符情况下隐藏成员,但会生成警告。如果用new关键字显示隐藏成员,则会取消此警告。

     无new关键字代码:

      

     有new关键字代码:

     

    结果:

    

    注意:

    在子类中用 new 关键字修饰定义的与父类中同名的方法,叫覆盖。覆盖不会改变父类方法的功能。

    当子类创建父类时,代码中A c = new B(),覆盖不会改变父类的功能。依然还是调用父类的功能。

  • new 约束

    new 约束是指泛型类声明中任意参数类型都要有无参构造函数,当与其他约束一起使用时,new约束必须在最后指定。

public class  BaseDAL<T> : IDAL.IBaseDAL<T> where T : class,new()  {  }