C#中const 和 readonly 修饰符的用法详解
1.只有C#内置类型(int,double,long等)可以声明为const;结果、类和数组不能声明为const。
2.readonly是在字段上使用的修饰符,直接以类名.字段访问。
3.const必须在申明中初始化。之后不能再修改。
4.readonly可以在申明中初始化,也可以在构造函数中初始化,其它情况不能修改。
namespaceconst_and_readonly { classProgram { staticvoidMain(string[]args) { Console.WriteLine("Halfayearhave{0}Moths",Calendar.Moths/2);//直接类名.字段访问const字段 Calendartest1=newCalendar(); Console.WriteLine("Everyyearhas{0}weeksand{1}days",test1._weeks,test1._days);//readonly字段通过实例访问 Calendartest2=newCalendar(31,4); Console.WriteLine("Januaryhas{0}weeksand{1}days",test2._weeks,test2._days); Console.ReadKey(); } } classCalendar { publicconstintMoths=12;//const必须在声明中初始化 publicreadonlyint_days=365;//readonly在声明中初始化 publicreadonlyint_weeks; publicCalendar()//readonly在构造函数内初始化 { _weeks=52; } publicCalendar(intdays,intweeks)//readonly在构造函数内初始化 { _days=days; _weeks=weeks; } publicvoidsetvalue(intdays,intweeks) { //_days=days;无法对只读字段赋值 //_weeks=weeks;无法对只读字段赋值 } }
以上所述是小编给大家介绍的C#中const和readonly修饰符的用法详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对毛票票网站的支持!