国产探花免费观看_亚洲丰满少妇自慰呻吟_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://m.survivalescaperooms.com/netlyf/archive/2010/12/20/1910977.html


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 石嘴山市| 东城区| 商都县| 聂荣县| 剑河县| 盐津县| 左权县| 威远县| 灵山县| 香港 | 井研县| 汕头市| 阿拉尔市| 龙井市| 固始县| 平潭县| 浦北县| 奉贤区| 呼图壁县| 桂阳县| 大余县| 五原县| 淮滨县| 琼海市| 永川市| 周口市| 咸阳市| 镶黄旗| 西华县| 杨浦区| 安国市| 德格县| 民乐县| 通道| 团风县| 宁国市| 昭苏县| 关岭| 崇文区| 南开区| 米泉市|