A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 黑马-金鑫 中级黑马   /  2012-9-6 11:52  /  2383 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 黑马-金鑫 于 2012-9-6 12:39 编辑

const和readonly有什么区别?

评分

参与人数 1技术分 +1 收起 理由
郑文 + 1

查看全部评分

5 个回复

正序浏览
1.const、readonly和static readonly定义的常量,指定初始值后(包括在构造函数内指定的初始值) 将不可更改,可读不可写;
2.const定义时必须指定初始值,而readonly定义时可以不进行初始化(MS建议在定义时初始值),同时也可以在构造函数内指定初始值, 并以构造函数内指定的值为准;
3.const和static readonly定义的常量是静态的,只能由类直接访问;而readonly定义的常量是非静态 的,只能由实例对象访问;  
4.static readonly常量,如果在构造函数内指定初始值,则必须是静态无参构造函数;
5.const是编译时常量,readonly是运行时常量;cosnt较高效,readonly较灵活。在应用上以static readonly代替const,以平衡const在灵活性上的不足,同时克服编译器优化cosnt性能,所带来的程序集引用不一致问题;  
      

评分

参与人数 1技术分 +1 收起 理由
郑文 + 1

查看全部评分

回复 使用道具 举报
许庭洲 发表于 2012-9-6 12:55
1 . const常量。常量名要大写。
2.  const常量语法要求一定不会变化的值才能声明为常量;
3. readonly是ASP ...

又长知识了,{:3_64:}
回复 使用道具 举报
1 . const常量。常量名要大写。
2.  const常量语法要求一定不会变化的值才能声明为常量;
3. readonly是ASP.net控件的属性;
4. readonly=true,表明该控件在前台显示并能修改数据,若 readonly=false,表明该控件在前台不能修改。
回复 使用道具 举报
徐宏伟 发表于 2012-9-6 11:57
http://bbs.itheima.com/forum.php?mod=viewthread&tid=3020&reltid=7457&pre_thread_id=24990&pre_pos=1&e ...

嗯嗯  谢谢这位仁兄{:3_64:}
回复 使用道具 举报
http://bbs.itheima.com/forum.php ... ;pre_pos=1&ext=


这个回答的比较好,借给你了!!!

评分

参与人数 1技术分 +1 收起 理由
郑文 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马