C#關(guān)于類(lèi)的只讀只寫(xiě)屬性實(shí)例分析
C#中屬性的目的是對(duì)字段的封裝,是為了程序數(shù)據(jù)的安全性考慮的。本文即以實(shí)例形式對(duì)C#中只讀只寫(xiě)屬性進(jìn)行剖析。
對(duì)于只讀或只寫(xiě)的屬性定義:
1、不寫(xiě)入其中一個(gè)get\set方法即可只讀或只寫(xiě)
比如:
private int a;
public int A{
get
{
return a;
}
}
2、用private進(jìn)行保護(hù),類(lèi)外同樣意味著只讀或只寫(xiě)
比如:
private int a;
public int A{
private get
{
return a;
}
set
{
a = value;
}
}
這里需要注意的是,這樣定義的屬性是在 C# 3.0 和更高版本中,當(dāng)屬性的訪問(wèn)器中不需要其他邏輯時(shí),自動(dòng)實(shí)現(xiàn)的屬性可使屬性聲明更加簡(jiǎn)潔。
編譯器將創(chuàng)建一個(gè)私有的匿名支持字段,該字段只能通過(guò)屬性的 get 和 set 訪問(wèn)器進(jìn)行訪問(wèn),
public int A{get;set;}
切記!這樣是無(wú)法省略其中一項(xiàng)(get/set)進(jìn)行只讀或者只寫(xiě)的.
但是用private保護(hù)就可以:
public int A{get;private set;}
相關(guān)文章
C# 7.0之ref locals and returns(局部變量和引用返回)
這篇文章主要介紹了C# 7.0之ref locals and returns,即局部變量和引用返回,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-03-03
淺談C# AOP的簡(jiǎn)單實(shí)現(xiàn)
這篇文章主要介紹了淺談C# AOP的簡(jiǎn)單實(shí)現(xiàn),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-07-07
C#利用ASP.NET?Core開(kāi)發(fā)學(xué)生管理系統(tǒng)詳解
隨著技術(shù)的進(jìn)步,跨平臺(tái)開(kāi)發(fā)已經(jīng)成為了標(biāo)配,在此大背景下,ASP.NET?Core也應(yīng)運(yùn)而生。本文主要利用ASP.NET?Core開(kāi)發(fā)一個(gè)學(xué)生管理系統(tǒng),感興趣的可以學(xué)習(xí)一下2022-01-01
WPF實(shí)現(xiàn)頁(yè)面的切換的示例代碼
本文主要介紹了WPF實(shí)現(xiàn)頁(yè)面的切換的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-01-01

