Readonly和Const的区别

readonly与const区别

  • const常量在声明的同时必须赋值,readonly在声明时可以不赋值
  • readonly只能在声明时或在构造方法中赋值(readonly的成员变量可以根据调用不同的构造方法赋不同的值)
  • const前面不能添加static(因为Const本来就是一个静态常量),readonly前面可以添加static
  • const在编译的时候赋值,readonly在运行的时候赋值
  • const能在方法内声明,readonly不能在方法内声明
    在这里插入图片描述
 class ReadOnlyAndConstDifference
    {
        public const string Name = "laowang"; //const常量本来就是静态常量,所以前面不能加static
        public static readonly int Gender; //const必须在声明时赋值,readonly可以在声明时不赋值

        public ReadOnlyAndConstDifference(int gender)
        {
            Gender = gender;

        }

        public void Method()
        {
            //Gender = 2;  //readonly只能在构造函数或者声明的时候赋值
            const int num1 = 10; //可以在方法内部声明
            //readonly int num2 = 10;出错,readonly不能在方法内部声明
            
        }

        static void Main(string[] args)
        {
        }
    }
发布了69 篇原创文章 · 获赞 0 · 访问量 1008

猜你喜欢

转载自blog.csdn.net/qq_21209307/article/details/104944510
今日推荐