C#中const 和 readonly 潤飾符的用法詳解。本站提示廣大學習愛好者:(C#中const 和 readonly 潤飾符的用法詳解)文章只能為提供參考,不一定能成為您想要的結果。以下是C#中const 和 readonly 潤飾符的用法詳解正文
1. 只要C#內置類型(int,double,long等)可以聲明為const;成果、類和數組不克不及聲明為const。
2. readonly 是在字段上應用的潤飾符,直接以類名.字段拜訪。
3. const 必需在聲名中初始化。以後不克不及再修正。
4. readonly可以在聲名中初始化,也能夠在結構函數中初始化,其它情形不克不及修正。
namespace const_and_readonly
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Half a year have {0} Moths", Calendar.Moths/2); //直接類名.字段拜訪const字段
Calendar test1 = new Calendar();
Console.WriteLine("Every year has {0} weeks and {1} days", test1._weeks, test1._days);//readonly字段經由過程實例拜訪
Calendar test2 = new Calendar(31, 4);
Console.WriteLine("January has {0} weeks and {1} days", test2._weeks ,test2 ._days);
Console.ReadKey();
}
}
class Calendar
{
public const int Moths = 12; //const必需在聲明中初始化
public readonly int _days=365; //readonly在聲明中初始化
public readonly int _weeks;
public Calendar() //readonly在結構函數內初始化
{
_weeks = 52;
}
public Calendar(int days,int weeks) //readonly在結構函數內初始化
{
_days = days;
_weeks = weeks;
}
public void setvalue(int days,int weeks)
{
// _days = days; 沒法對只讀字段賦值
//_weeks = weeks; 沒法對只讀字段賦值
}
}
以上所述是小編給年夜家引見的C#中const 和 readonly 潤飾符的用法詳解,願望對年夜家有所贊助,假如年夜家有任何疑問請給我留言,小編會實時答復年夜家的。在此也異常感激年夜家對網站的支撐!