国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

屬性與字段的區(qū)別

2019-11-14 13:50:29
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

從兩者的聲明上來(lái)看,公共字段只是類用public修飾符所公開的簡(jiǎn)單公共變量,而屬性則是對(duì)字段的封裝,它使用get和set訪問(wèn)器來(lái)控制如何設(shè)置或返回字段值。

由于屬性的實(shí)質(zhì)是方法(get或set方法),在IL中是沒(méi)有屬性的概念的。所以對(duì)于開發(fā)過(guò)程中常用的賦值和取值操作來(lái)說(shuō),使用公共變量肯定會(huì)比使用屬性速度要快,性能上也稍高(方法和變量哪個(gè)速度不用說(shuō)了吧)。

公共字段雖然在速度上快,但它必須開放字段為public,這樣一來(lái)對(duì)象的調(diào)用者便可以直接修改其值,值的內(nèi)容是否合法,運(yùn)行中是否會(huì)出錯(cuò),就沒(méi)有了保障,進(jìn)而會(huì)大大降低類的可重用性;相反,屬性類似于方法,它可以對(duì)存入的變量的值進(jìn)行處理,如果覺(jué)得該值不合法,可以就地變換或者直接提出警告。這對(duì)該類的對(duì)象的使用安全有很大好處,在運(yùn)行過(guò)程中,因公共變量值的錯(cuò)誤而產(chǎn)生的問(wèn)題會(huì)大大減少。

從上述內(nèi)容來(lái)看,兩者各有優(yōu)缺點(diǎn),在實(shí)際項(xiàng)目開發(fā)過(guò)程中,我們究竟選擇使用哪一種方式呢?

如果滿足下面幾個(gè)條件,那么我們便可以大膽地使用公共字段:

1. 允許自由讀寫;

2. 取值范圍只受數(shù)據(jù)類型約束而無(wú)其他任何特定限制;

3. 值的變動(dòng)不需要引發(fā)類中其它任何成員的相應(yīng)變化;

屬性的使用條件則恰好跟變量相反,只要滿足下面任何一個(gè)條件,就應(yīng)該使用屬性:

1. 要求字段只能讀或者只能寫;

2. 需要限制字段的取值范圍;

3. 在改變一個(gè)字段的值的時(shí)候希望改變對(duì)象的其它一些狀態(tài);

總結(jié):雖然在實(shí)際項(xiàng)目的開發(fā)過(guò)程中,公共字段和屬性在合適的條件下都可以使用,但是我們應(yīng)該盡可能的使用屬性(PRoperty),而不是數(shù)據(jù)成員(field);把所有的字段都設(shè)置為私有字段,如果要暴露它們,則把它們封裝成屬性,這也是微軟推薦的方式。

http://www.survivalescaperooms.com/netlyf/archive/2010/12/20/1910977.html


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 乐至县| 中方县| 庆元县| 屏山县| 陕西省| 汶川县| 祁连县| 泗阳县| 来宾市| 呼和浩特市| 淅川县| 黄龙县| 察隅县| 织金县| 新泰市| 淮阳县| 诸暨市| 商南县| 汤原县| 那曲县| 东阳市| 高密市| 比如县| 建始县| 永善县| 西乡县| 祁阳县| 黔江区| 长汀县| 锡林郭勒盟| 乌鲁木齐县| 宁河县| 尉犁县| 柳江县| 穆棱市| 宾川县| 阜城县| 秀山| 漳州市| 阿克苏市| 中方县|