相关疑难解决方法(0)

C# - 关键字用法虚拟+覆盖与新

在基类型" virtual"中声明方法然后使用" override"关键字在子类型中覆盖它而不是new在声明子类型中的匹配方法时简单地使用" "关键字之间有什么区别?

c# syntax overriding method-hiding member-hiding

201
推荐指数
6
解决办法
6万
查看次数

方法签名中的新关键字

在执行重构时,我最终创建了一个类似下面示例的方法.为简单起见,数据类型已更改.

我之前有一个这样的赋值语句:

MyObject myVar = new MyObject();
Run Code Online (Sandbox Code Playgroud)

它是偶然重构的:

private static new MyObject CreateSomething()
{
  return new MyObject{"Something New"};
}
Run Code Online (Sandbox Code Playgroud)

这是我的剪切/粘贴错误的结果,但new关键字in private static new有效并编译.

问题:new关键字在方法签名中表示什么?我假设它是在C#3.0中引入的东西?

这有override什么不同?

c# methods keyword

112
推荐指数
5
解决办法
8万
查看次数