C# new 三用

156 阅读1分钟

有时候会看到new的奇怪用法,

read-normal-img

new不止可以当运算符用来实例化对象,也可以当修饰符,和泛型类型约束使用。

一、实例化对象

二、修饰符:显式隐藏基类(父类)继承的成员

  但你想重写父类的某个方法或者属性。但父类不是abstract,且成员不是virtual。则无法override。

当然也可以什么关键字都不写。但是会报警告。让你使用关键字new。

三、约束泛型类必须可实例化或必须有无参构造器

约束泛型T。

注意: 泛型T不可以调用其他有参构造器,

参考链接:

https://learn.microsoft.com/zh-cn/dotnet/csharp/language-reference/keywords/new-constraint 
https://learn.microsoft.com/zh-cn/dotnet/csharp/language-reference/keywords/new-modifier
https://www.cnblogs.com/lzxboke/p/8414776.html