gpt4 book ai didi

c# - 下面的新是什么意思

转载 作者:太空狗 更新时间:2023-10-29 17:43:53 25 4
gpt4 key购买 nike

在界面中,我看到了如下内容

  public interface ITest : ITestBase
{
new string Item { get; set; }
}

我想知道这里的"new"是什么意思。

最佳答案

属性或方法前的new关键字用于隐藏非虚父类中的同名成员,被许多人(包括我)认为是不好的做法,因为它在很多情况下可能不'给你你期望的结果。

一个例子:

class A{
public int Test(){ return 1; }
}

class B : A{
public new int Test(){ return 2; }
}

B b = new B();
Console.WriteLine( b.Test() );
A b2 = new B();
Console.WriteLine( b2.Test() );

这将分别打印 2 和 1,这很容易混淆,因为这两个对象实际上都是类型 B。

关于c# - 下面的新是什么意思,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5001440/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com