C#中,子类如何初始化父类的readonly属性
C#中,子类怎么初始化父类的readonly属性?
class A
{
public readonly int _X;
public A()
{
_X=3;
}
}
class B:A
{
public B()
{
//Init _X?
}
}
------解决思路----------------------
readonly要在构造中赋值。所以你需要的是带参数的构造函数
class A
{
public readonly int _X;
public A(int m)
{
_X=m;
}
}
class B:A
{
public B(int m)
:base(m)
{
}
}
------解决思路----------------------
反射可以
class A
{
public readonly int _X;
public A()
{
_X=3;
}
}
class B:A
{
public B()
{
//Init _X?
}
}
------解决思路----------------------
readonly要在构造中赋值。所以你需要的是带参数的构造函数
class A
{
public readonly int _X;
public A(int m)
{
_X=m;
}
}
class B:A
{
public B(int m)
:base(m)
{
}
}
------解决思路----------------------
反射可以
this.GetType().InvokeMember("_X", BindingFlags.SetField, null, this, new object [] { 888 });