C#: 属性
C#: 属性<div id="cnblogs_post_body"> 在C#中定义属性:
public string SomeProperty
{
get
{
return "This is the property value";
}
set
{
// Do whatever needs to be done to set the property
}
}
get访问器不带参数,且必须返回属性声明的类型。编译器假定它带一个参数,且类型也与属性相同,并表示为value.
private string foreName;
public string ForeName
{
get
[*] { return foreName;
}
set
{
if (value.Length > 20)
{
// Code here to take error recovery action
// (eg. Throw an exception)
}
else
foreName = value;
}
}
[*]只读属性:在属性定义中省略set访问器
[*]只写属性:在属性定义中省略get访问器
[*]自动实现的属性:属性的set和get访问器中没有任何逻辑,代码如下
public string ForeName {get; set;}
必须有两个访问器,尝试把该属性设置成只读属性就会出错, 例如: Public string ForeName {get; }
每个访问器的访问级别可以不同,例如: public string ForeNam {get; private set;}
页:
[1]