码迷,mamicode.com
首页 > 其他好文 > 详细

第六章类(十九)readonly

时间:2019-12-12 18:24:08      阅读:80      评论:0      收藏:0      [点我收藏+]

标签:规范   tween   constant   read   只读   stat   外部   面对对象   代码   

  readonly英文译义是只读属性,在上篇与const的对比,是说

  1 在运行时为readonly字段赋值的,看到编译出来的CIL代码中readonly字段还是变量。

  同样是字段(面对对象的术语),const修饰是常量的意思,那么,又为何有readonly的出现呢?

  难道就是因为它是在运行时赋值的嘛?

  我们在之前的文字中理解过const从意思上讲是常量的意思,就是要描述不随着时间推移发生变化的事物。

  2 readonly就是只读的意思,另外它只能在构造函数中赋值或者声明时给它赋值,所以它是只能只应用于字段而不是局部变量。

  我在书籍资料中,有看到这样的文字,由于规范要求字段不要从起包容属性外部访问,所以从C#6.0起readonly修饰符几乎完全没有了用武之地。

  所以,我理解readonly就是区别const的意义。在C#6.0出现之前,是只读字段。

  3 const是静态的,readonly是可以修饰静态字段,也可以修饰实例字段。

  除了自己看书还摘取这个博主的内容https://www.cnblogs.com/chen-jie/p/10-differences-between-constant-vs-readonly-static-readonly-fields.html

第六章类(十九)readonly

标签:规范   tween   constant   read   只读   stat   外部   面对对象   代码   

原文地址:https://www.cnblogs.com/158-186/p/12030525.html

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