比较const ,readonly, stitac readonly:

  1. const和readonly的值一旦初始化则都不再可以改写;
  2. const必须在声明时初始化;readonly既可以在声明时初始化也可以在构造器中初始化,因为见4;
  3. const隐含static,不可以再写static const;readonly则不默认static,如需要可以写static readonly;
  4. const是编译期静态解析的常量(因此其表达式必须在编译时就可以求值); readonly则是运行期动态解析的常量, static readonly字面就是实例时赋值;
  5. const既可用来修饰类中的成员,也可修饰函数体内的局部变量;readonly只可以用于修饰类中的成员。
  6. const访问必须以"Classname.VariableName"方式访问,而readonly访问必须以"InstanceName.VariableName"方式访问。

代码说明问题

const关键字

class ConstantEx{public const int number =3;}class Program{static void Main(string[] args){//如果这里使用 ConstantEx.number=10 会出错,在整个app内该值不可改变
            Console.WriteLine(ConstantEx.number);// 类名+常量访问Console.ReadLine();}}

readonly关键字

class ReadOnlyEx{//说明该值可以在运行时改变,即在实例化时改变该值public readonly int number = 10;public ReadOnlyEx(){number =20;}public ReadOnlyEx(bool IsDifferentInstance){number = 100;}}class Program{static void Main(string[] args){//必须实例化后访问ReadOnlyEx readOnlyInstance = new ReadOnlyEx();Console.WriteLine(readOnlyInstance.number);ReadOnlyEx differentInstance = new ReadOnlyEx(true);Console.WriteLine(differentInstance.number);Console.ReadLine();}}

转载于:https://www.cnblogs.com/zfcflower/p/3322549.html

比较const ,readonly, stitac readonly相关推荐

  1. const和static readonly 区别

    我们都知道,const和static readonly的确很像:通过类名而不是对象名进行访问,在程序中只读等等. 在多数情况下可以混用. 二者本质的区别在于,const的值是在编译期间确定的,因此只能 ...

  2. const 与 static readonly 的区别

    来作个例子吧: 先创建一个类库ClassLibrary1.dll using System; namespace ClassLibrary1 {     /// <summary>     ...

  3. C#中const和static readonly 的区别

    我们都知道,const和static readonly的确很像:通过类名而不是对象名进行访问,在程序中只读等等.在多数情况下可以混用. 二者本质的区别在于,const的值是在编译期间确定的,因此只能在 ...

  4. 常量(const)与只读(readonly)字段

    (一)实践代码: using System;using System.Collections.Generic;using System.Linq;using System.Text;using Sys ...

  5. const常量和readonly常量区别

    1.const常量为静态常量:readonly常量为动态常量: 2.const常量在编译时值被确定,在运行时值为编译时值:readonly常量,在编译时为类型的默认值(非指定的默认值),在运行时值被确 ...

  6. c# 中const 和 static readonly 的区别

    C# 在处理const关键字的时候,直接嵌入值来进行编译. 而在处理readonly关键字的时候,是动态引用的. 转载于:https://www.cnblogs.com/suneryong/archi ...

  7. C# static变量、const变量、readonly变量

    变量 1. static 2. const 3. readonly 1. static wolfCount 是描述狼群整体特征的量,这种描述类的整体特征的量可以用静态变量 实现.静态变量在内存中只有一 ...

  8. C#Const与static readonly的区别

    前言: Const与readonly我们应该都用过,我们只知道这个关键字很像,都是通过类型访问,并且在程序中都是只读,但是很少有人能分清楚两个的差别,今天我们来细谈Const与readonly. Co ...

  9. Connection is read-only @Transactional(readOnly = false)不管用

    今天改代码遇到一个问题,项目是老项目,这个功能又是新加上的.上一个人写业务直接在控制层写的.但是现在到我接手,刚好最近客户在用出现了问题.修改数据的时候数据乱了.以前这个功能是没有事务的,我一看就觉得 ...

最新文章

  1. python使用matplotlib可视化、查看matplotlib中常用的线条形式(line style)和数据点标记形状(marker)
  2. cus.crm.myaccounts.util.Util.isIntentSupported
  3. python魔法方法str_8.9.魔法方法 - str()方法
  4. 【BZOJ4559】【JLOI2016】—成绩比较(拉格朗日插值+dp)
  5. docker添加jar包_Docker部署jar包
  6. 仿QQ聊天室【方案】
  7. java 获取当前年_java中的反射(三) - kelexin
  8. 百度地图行政区域划分镂空
  9. FASTBOOT教程
  10. 小程序加载本地图片报错500
  11. bootstraptable冻结列无效_Bootstrap Table 冻结列功能详解
  12. 物联网中常用到的DTU到底是什么?
  13. wav pcm格式文件解析
  14. Google算法更新记录-你想了解的全在这
  15. 03 graphx 从 SSSP 来看 pregel
  16. 滴滴:去年协助警方破获25案件 成立打击黑产专项组
  17. c语言编译器只有9行怎么添加,avr单片机c语言编译器(9页)-原创力文档
  18. Microsoft 离线翻译引擎介绍
  19. XX is not defined import impor了还是not defined ant design组件import还是not defined
  20. 02 Python安装 - 纯Python安装

热门文章

  1. 国内渗透测试新神器--北极熊扫描器4.0
  2. 智能养老监测系统设计
  3. Java Web应用开发实用教程,JavaWeb应用开发实用教程习题部分汇总
  4. 使用Systemctl命令来管理系统服务
  5. 金纳米粒子修饰MIL-101骨架材料(AuNPs/MIL-101)/负载COF-TpPa-1(Au NPs/COF-TpPa-1)|齐岳试剂
  6. 为什么使用多级页表?
  7. 【限流算法】java实现固定时间窗口算法
  8. java 线程卡住_Java程序卡住及排查
  9. 满足条件的整数 - 详解
  10. python3:小练习