在阅读c#中的属性时,我知道只有一个属性的访问者可以拥有访问修饰符,例如
私人或受保护的
例如
public int mbox_ival
{
get{
return m_ival;
}
protected set {
m_ival = value;
}
}
Run Code Online (Sandbox Code Playgroud)
现在如果我想限制两个要保护的属性,我就知道它是不允许的.在c#规范中,也就是说只有一个访问者可以拥有访问修饰符.我无法理解这背后的原因.我是c#的新手,有人可以帮忙.
Cri*_*ole 10
两者均受保护
protected int mbox_ival {
get { return m_ival; }
set { m_ival = value; }
}
Run Code Online (Sandbox Code Playgroud)
你只能拥有一个的原因是你拥有了属性的访问修饰符.
该修饰符是默认修饰符.修改两者只意味着你应该"提升"更宽松的一个.
例如:
public int mbox_ival {
protected get { return m_ival; }
private set { m_ival = value; }
}
Run Code Online (Sandbox Code Playgroud)
没有任何意义,因为该财产实际上并不公开.它至多受到保护.所以你应该这样做:
protected int mbox_ival {
get { return m_ival; }
private set { m_ival = value; }
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
73 次 |
| 最近记录: |