快乐每一天~~~
C#的属性访问器。。。
上一篇 /
下一篇 2008-05-18 19:31:33
/ 个人分类:编程
查看( 4 ) /
评论( 5 )
属性的访问器包含与获取(读取或计算)或设置(写)属性有关的可执行语句。访问器声明可以包含 get 访问器或 set 访问器,或者两者均包含。声明采用下列形式之一: 爱好者博墅 n:nAsQa:n
set {accessor-body} 爱好者博墅B r"qk9Dr
get {accessor-body} 爱好者博墅A |o0B5ON-NN
其中: 爱好者博墅ZE*z Vv(\:FR+O
accessor-body
YwS!R$@Bm
v)`0 包含将在调用访问器时执行的语句的块。 爱好者博墅h:v4R5G\CR~4Q
爱好者博墅9B8K,d2@+K}"HD8d
1>get 访问器
#b#GS'Um0 get 访问器体与方法体相似。它必须返回属性类型的值。执行 get 访问器相当于读取字段的值。以下是返回私有字段 name 的值的 get 访问器: 爱好者博墅
u3a U e
W2s.c2i
private string name; // the name field
k0PL"w,YY(m aE0 public string Name // the Name property 爱好者博墅d#OZ3dUtj
{
^qzhH:gC\%G`0 get
gUb-`$]X(a lB0 { 爱好者博墅5f;q#B0AF$o,Se]Y5E
return name;
8Au'Vj` u@%[0 }
,ImH*]~#a7wlgu0 }
J9_2AZ6e g}PO0 当引用属性时,除非该属性为赋值目标,否则将调用 get 访问器读取该属性的值。例如: 爱好者博墅:uV2n
~$s }
Employee e1 = new Employee(); 爱好者博墅5IX+s
gwE
... 爱好者博墅cfe7i \ X
Console.Write(e1.Name); // The get accessor is invoked here 爱好者博墅 C,@ jN'v$dfZ ?
get 访问器必须在 return 或 throw 语句中终止,并且控制不能超出访问器体。
$V L'd&mh;a\0
Wc ob3w3I5MK!v02>set 访问器 爱好者博墅)uQ Y&LJ"|fwI!r
X]
set 访问器与返回 void 的方法类似。它使用称为 value 的隐式参数,此参数的类型是属性的类型。在下例中,set 访问器被添加到 Name 属性: