淺談C# 字段和屬性
一、淺談訪問修飾符
作用:設(shè)定訪問權(quán)限,限制類中的成員(屬性、方法等)可訪問的范圍,訪問范圍通常有,類的內(nèi)部、類的外部。
最常用的類型:private(私有的,僅類的內(nèi)部使用);public(公有的,沒有訪問限制)
注意:類的成員在定義的時(shí)候沒有顯示的寫出訪問修飾符,則默認(rèn)是private。對(duì)應(yīng)到字段和屬性中,通常字段修飾為private,屬性修飾為public。
二、字段的使用
1.關(guān)于字段
a.字段又稱為:“成員變量”,一般在類的內(nèi)部做數(shù)據(jù)交互使用。
b.字段命名規(guī)范:camel命名法(首單詞字母小寫)。
2.通俗的理解:
私有化:字段就好比我們的個(gè)人財(cái)產(chǎn),僅供個(gè)人使用,所以一般是private修飾。
添加標(biāo)準(zhǔn):根據(jù)程序的功能需求,具體來添加需要的不同類型的字段。
三、屬性
1.屬性的使用
作用:在面向?qū)ο笤O(shè)計(jì)中主要使用屬性描述對(duì)象的靜態(tài)特征。
要求:一般采用Pascal命名法(首字母大寫),數(shù)據(jù)類型要和對(duì)應(yīng)的字段要一致。
2.屬性的理解
a.屬性其實(shí)就是外界訪問私有字段的入口,屬性本身不保存任何數(shù)據(jù),在對(duì)屬性賦值和讀取的時(shí)候其實(shí)就是操作的對(duì)應(yīng)私有字段。
圖例:

b.屬性本質(zhì)其實(shí)就是一個(gè)方法,通過get和set方法來操作對(duì)應(yīng)的字段,通過反編譯工具我們可以看出,如圖:

3.屬性的作用
A.避免出現(xiàn)非法數(shù)據(jù),例如一個(gè)年齡屬性,正常邏輯是年齡是不可以出現(xiàn)負(fù)數(shù)的,如果用戶對(duì)年齡進(jìn)行了負(fù)數(shù)的賦值,我們通過屬性的set方法加入判斷邏輯,從而排除這種非法數(shù)據(jù)。
示例:

B.限定屬性只讀或者只寫,例如有些屬性為了保護(hù)數(shù)據(jù),我們只能讀取,而不能賦值。具體使用的話,我們根據(jù)需要,屏蔽set或get方法達(dá)到只讀和只寫。
示例:

C.沒有對(duì)應(yīng)私有字段的屬性,例如根據(jù)生日屬性獲取到年齡。
示例:

四、字段與屬性比較
字段(成員變量)
a.字段主要是為類的內(nèi)部做數(shù)據(jù)交互使用,字段一般是private。
b.字段可讀可寫。
c.當(dāng)字段需要為外部提供數(shù)據(jù)的時(shí)候,請(qǐng)將字段封裝為屬性,而不是使用公有字段(public修飾符),這是面向?qū)ο笏枷胨岢摹?/p>
屬性(方法)
a.屬性一般是向外提供數(shù)據(jù),主要用來描述對(duì)象的靜態(tài)特征,所以,屬性一般是public。
b.屬性具備get和set方法,可以在方法里加入邏輯處理數(shù)據(jù),靈活拓展使用。
五、自動(dòng)屬性
1.屬性編寫新語法(自動(dòng)屬性:.NET3.0及其后續(xù)版本)
示例:

快捷方式:prop+tab+tab
注意:沒有特定業(yè)務(wù)邏輯的屬性都可以簡寫成自動(dòng)屬性,自動(dòng)屬性的格式不能修改。自動(dòng)屬性對(duì)應(yīng)的字段由編譯器自動(dòng)生成。
以上就是淺談C# 字段和屬性的詳細(xì)內(nèi)容,更多關(guān)于C#字段和屬性的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
C#發(fā)送和接收HTTP請(qǐng)求類HttpWebRequest的用法
這篇文章主要給大家介紹了關(guān)于C#發(fā)送和接收HTTP請(qǐng)求類HttpWebRequest用法的相關(guān)資料,C#中的HttpWebRequest是一個(gè)用于發(fā)送HTTP請(qǐng)求的類,它可以用于向Web服務(wù)器發(fā)送GET、POST、PUT、DELETE等請(qǐng)求,需要的朋友可以參考下2024-06-06
C#使用foreach語句遍歷隊(duì)列(Queue)的方法
這篇文章主要介紹了C#使用foreach語句遍歷隊(duì)列(Queue)的方法,涉及foreach語句的使用技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-04-04

