這篇文章主要講解了“C#的const、readonly和static關鍵字如何使用”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“C#的const、readonly和static關鍵字如何使用”吧!

創新互聯公司始終堅持【策劃先行,效果至上】的經營理念,通過多達10年累計超上千家客戶的網站建設總結了一套系統有效的全網整合營銷推廣解決方案,現已廣泛運用于各行各業的客戶,其中包括:石牌坊等企業,備受客戶稱贊。
const默認是靜態的,可以通過"類名.字段名"來訪問。
const變量只能在聲明的時候賦值,不能在構造函數中為const類型變量賦值。
一旦程序集被編譯,const變量會被寫進程序集的IL代碼中。如果想修改const變量值,必須在修改值后再重新生成程序集。
const是編譯期變量
public class Test
{
public const int defaultValue = 10;
//這里報錯:因為不能在構造函數內為const變量賦值
public Test()
{
defaultValue = 1000;
}
}以上,可以通過Test.defaultValue來獲取變量defaultValue的值。在Test構造中為defaultValue賦值會報錯,只能在聲明defaultValue的時候賦初值。
readonly默認是實例變量,只能通過"對象實例.字段名"來訪問。
readonly變量可以在聲明的時候或在構造函數內賦值。
如果想改變readonly變量值,只需要在聲明變量或構造函數內修改,不需要重新生成程序集。
readonly是運行時變量
class Program
{
static void Main(string[] args)
{
Test test = new Test();
Console.WriteLine(test.rdValue);
Console.ReadKey();
}
}
public class Test
{
public readonly int rdValue;
public Test()
{
this.rdValue = 100;
}
//這里報錯:因為只能在聲明變量或構造函數內對readonly變量賦值
public int RDVaue
{
get { return rdValue; }
set { rdValue = value; }
}
}以上,通過Test類的實例來獲取readonly變量值,test.rdValue。在RDValue屬性中為readonly變量rdValue賦值會報錯。
此時的readonly變量只能在聲明變量的時候賦值
此時的readonly變量可以通過"類名.字段名"來訪問
此時的readonly變量變成了編譯期變量
class Program
{
static void Main(string[] args)
{
Console.WriteLine(Test.rdValue);
Console.ReadKey();
}
}
public class Test
{
public static readonly int rdValue=100;
}以上,只能在聲明static readonly變量rdValue的時候賦值。 通過Test.rdValue來訪問static readonly變量。
感謝各位的閱讀,以上就是“C#的const、readonly和static關鍵字如何使用”的內容了,經過本文的學習后,相信大家對C#的const、readonly和static關鍵字如何使用這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是創新互聯,小編將為大家推送更多相關知識點的文章,歡迎關注!
網站欄目:C#的const、readonly和static關鍵字如何使用
網頁地址:http://www.kartarina.com/article28/igcdjp.html
成都網站建設公司_創新互聯,為您提供企業建站、App開發、網站導航、標簽優化、微信公眾號、商城網站
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯