属性定义为virtual,然后在子类中override
public class A
{
private string _name;
public virtual string name
{
get
{
return _name;
}
set{
_name = value;
}
}
public A(string str)
{
_name = str;
}
public A()
{
}
}
public class B:A
{
private string _name;
public override string name
{
get
{
return _name;
}
set
{
_name = value;
}
}
public B(string str)
{
_name = str;
}
}
通过下面进行测试:
A classA = new A("classA");
B classB = new B("classB");