在C#/.NET中,我们可以为属性的get和set访问器指定访问修饰符吗?
如果可以,那么最好的实现方法是什么?
在C#/.NET中,我们可以为属性的get和set访问器指定访问修饰符吗?
如果可以,那么最好的实现方法是什么?
是的,这是可能的。它被称为不对称访问者可达性(Asymmetric Accessor Accessibility),您可以阅读 MSDN 文档此页面。代码应该类似于:
public int Age
{
get
{
return _age;
}
protected set
{
_age = value;
}
}
然而,需要牢记以下几点重要注意事项:
是的,你可以...
public class Example
{
public string Property
{
get;
private set;
}
public string Property2
{
get;
protected set;
}
}
etc.
http://msdn.microsoft.com/en-us/library/ms173121.aspx 显示了可能的修饰符。如果你想要不同的修饰符,请写入:
[Modifier] [DataType] ProperyName{
[Modifier] get{}
[Modifier] set{}
}
然而,如果您声明内部修饰符,则其可见性必须小于或等于外部修饰符。