目标
继承类中再次定义已经在基类中出现过的同名属性。
方法
如果出现重复属性,要用 new
关键词。例如:
public new int DuplicateProperty{get;set;}
示例
在线运行:https://ideone.com/dzHk2G
using System;
class Untitled
{
class Class1
{
public int DuplicateProperty {get;set;}
}
class Class2 : Class1
{
public new int DuplicateProperty{get;set;} // 有覆盖的要用 new
public int ItemId {get;set;}
}
static void Main(string[] args)
{
Console.WriteLine("Hello World");
Class2 c = new Class2();
c.DuplicateProperty = 1;
Class1 a = new Class1();
Console.WriteLine(a.DuplicateProperty.ToString()); //值为0
Console.WriteLine(c.DuplicateProperty.ToString()); //值为1
}
}