zoukankan      html  css  js  c++  java
  • C#细节之const&readonly

    const是常量,readonly是只读,“博客园er”都知道:)
    那么他们的区别是什么那?个人总结如下:
    一、赋值
    1)const修饰的变量在定义时必须赋初值,其他位置不容许改变变量值;
    2)readonly修饰的变量可以在定义时赋值也可以在构造函数中赋值,其他位置不容许改变变量值。
    二、调用
    1)const修饰的变量需要用类名来调用如同static成员一样。
    2)readonly修饰的变量需要用对象来调用。
    三、代码
    例:
    public class ConstReadOnly
        {
            //public const string FirstName; //Error:const 定义变量时要初始化
            public const string LastName = "Landpy";
            public readonly string Age = “0”;
            public ConstReadOnly()
            {
                Age = "27";
            }
            public void Deal()
            {
                //Age = "123";//Error:ReadOnly只能在构造函数或定义时赋值
                //LastName = "Peter";//Error:Const只能在定义时赋值
                string Tmp = String.Empty;
                Tmp = ConstReadOnly.LastName;
                //Tmp = ConstReadOnly.Age;//Error:readonly修饰的变量只能用对象调用
                ConstReadOnly constReadOnly = new ConstReadOnly();
                //Tmp = constReadOnly.LastName;//Error:const修饰的变量只能用类名调用
                Tmp = constReadOnly.Age;
            }
        }
    敬告

    作者:pangxiaoliang
    出处:http://www.cnblogs.com/pangxiaoliang
    本文版权归pangxiaoliang和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,谢谢合作。
  • 相关阅读:
    python基础易错题
    经典案例题2
    经典案例题1
    Http和Https的区别
    爬虫过程中需要注意的问题
    [转]项目规模估计方法介绍
    [转]23种设计模式总结
    [转]分布式session的几种实现方式
    [转]Redis哨兵模式(sentinel)学习总结及部署记录(主从复制、读写分离、主从切换)
    [转]【Linux】Linux 目录结构
  • 原文地址:https://www.cnblogs.com/pangxiaoliang/p/1530645.html
Copyright © 2011-2022 走看看