码迷,mamicode.com
首页 > Windows程序 > 详细

《刻意练习之C#》-0019- C# readonly和const

时间:2020-06-13 11:04:59      阅读:83      评论:0      收藏:0      [点我收藏+]

标签:运行   不能   替换   read   数据类型   stat   csharp   构造函数   vat   

const定义的是一个常量,在编译器编译的时候就要确定其值;编译器会把用到常量的地方替换成常量定义的具体值。

readonly定义的是一个只读变量,为了保证变量不能被改变;readonly定义的变量,在运行期间通过构造函数指定;

 

const定义的字段,是类级别的;

readonly定义的字段,如果同时有static修饰则是类级别,如果没有static则是实例级别的。

 

下面是readonly 和static readonly的示例:

    public class DocumentEditor
    {
        private static readonly uint _maxDocuments;

        static DocumentEditor()
        {
            _maxDocuments = 100;
        }
    }

    public class Document
    {
        private readonly DateTime _creationDateTime;

        public Document()
        {
            _creationDateTime = DateTime.Now;
        }

    }

  

注意:

在构造函数中不必给只读字段赋值;如果没有赋值,它的值就是其数据类型的默认值。

也可以在声明的时候给其初始化值。

《刻意练习之C#》-0019- C# readonly和const

标签:运行   不能   替换   read   数据类型   stat   csharp   构造函数   vat   

原文地址:https://www.cnblogs.com/codesee/p/13111703.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!