C#中常量和只读变量的区别小结

常量和只读变量有以下区别:

1.常量必须在声明时就被初始化,指定了值后就不能修改了.只读字段可以在声明时被初始化,也可以在构造函数中指定初始化的值,在构造以后值就不能修改.

2.常量是静态的,而只读字段可以是静态和动态的

3.Const可以用在字段和局部变量,readonly只可以修饰字段

(0)

相关推荐

  • C#学习笔记整理_变量等基础语法(必看篇)

    C#学习笔记1: 变量的作用域冲突时,调用实例变量:this.a,调用类变量:类名.a 常量总是静态的,必须初始化,一般用全大写格式,声明关键字为const,如const int NUNBE = 10; C#的基本预定义类型内置于.NET Framework结构中(System),object是基类: 整型:System.SByte.System.Int16.System.Int32.System.Int64 有符号的8位.16位.32位.64位分别表示为sbyte.short.int.long

  • C#: 引用变量与数值变量的区别

    1. 值参数当利用值向方法传递参数时,编译程序给实参的值做一份拷贝,并且将此拷贝传递给该方法.被调用的方法不传经修改内存中实参的值,所以使用值参数时,可以保证实际值是安全的.在调用方法时,如果形式化参数的类型是值参数的话,调用的实参的值必须保证是正确的值表达式.在下面的例子中,程序员并没有实现他希望交换值的目的: 复制代码 代码如下: using System;class Test{static void Swap(int x,int y){int temp=x;x=y;y=temp;}stat

  • 在c#中把字符串转为变量名并获取变量值的小例子

    复制代码 代码如下: public class Program    {        public string str = "spp";        public string spp = "Hello World!"; public static void Main(string[] args)        {            Program p = new Program(); Console.WriteLine(p.GetType().GetFi

  • C#中属性和成员变量的区别说明

    一个类,有时候搞不清楚到底用成员变量还是属性. 如: 成员变量 public   string   Name; 或者用属性 private   string   name public   string   Name{         get         {                 return   name;         }         set         {                 name   =   value;         } } 属性与成员变量类似

  • C# 基础入门--变量

    使用变量分为3步:声明.赋值.使用. 声明变量的语法:数据类型 变量名: 给变量赋值的语法:变量名=值: namespace Test { class Program { static void Main(string[] args) { int age;//声明变量,类型为int,变量名为age age = 18;//给变量age赋值为18 Console.WriteLine("我今年"+age="岁");//打印age age = 19;//修改了变量age的值

  • C#类中属性与成员变量的使用小结

    属性实际上和成员变量没什么区别,属性代表类的某种特征, 让人更好理解而已. 使用中注意问题:1.属性名和变量名不能相同, 2.一般变量都是private,属性都是public的,属性用于给类外调用,变量限于类内使用,感觉封装性体现得要好些 3.属性必须和一个变量相联系,而这个变量必须要在类中定义.如果不定义,用成如下方法: 复制代码 代码如下: public int b //定义一个属性b  {      get   {    return b;   }   set   {    b = val

  • C#中static静态变量的用法实例

    本文实例讲述了C#中static静态变量的用法.分享给大家供大家参考.具体如下: 使用 static 修饰符声明属于类型本身而不是属于特定对象的静态成员static修饰符可用于类.字段.方法.属性.运算符.事件和构造函数,但不能用于索引器.析构函数或类以外的类型   静态全局变量 定义:在全局变量前,加上关键字 static 该变量就被定义成为了一个静态全局变量. 特点: ① .该变量在全局数据区分配内存. ② .初始化:如果不显式初始化,那么将被隐式初始化为0.   静态局部变量 定义:在局部

  • C#不同类型的成员变量(字段)的默认值介绍

    创建类的一个实例时,在执行构造函数之前,如果你没有给成员变量赋初始值,C#编译器缺省将每一个成员变量初始化为他的默认值. 如果变量是方法的局部变量,编译器就会认为在使用该变量之前,代码必须给它显示的设定一个值.否则会发生"使用了未赋值的局部变量"的错误. 对于其他情况,编译器会在创建变量时,把变量初始化为默认值.1.对于整型.浮点型.枚举类型(数值型),默认值为0或0.0.2.字符类型的默认值为\x0000.3.布尔类型的默认值为false.4.引用类型的默认值为null. 如果声时变

  • C#把整个文件内容读入字符串变量的方法

    本文实例讲述了C#把整个文件内容读入字符串变量的方法.分享给大家供大家参考.具体实现方法如下: using System; namespace PlayingAround { class ReadAll { public static void Main(string[] args) { string contents = System.IO.File.ReadAllText(@"C:\t1"); Console.Out.WriteLine("contents = "

  • C#中常量和只读变量的区别小结

    常量和只读变量有以下区别: 1.常量必须在声明时就被初始化,指定了值后就不能修改了.只读字段可以在声明时被初始化,也可以在构造函数中指定初始化的值,在构造以后值就不能修改. 2.常量是静态的,而只读字段可以是静态和动态的 3.Const可以用在字段和局部变量,readonly只可以修饰字段

  • JavaScript中find()和 filter()方法的区别小结

    目录 前言 JavaScript find() 方法 JavaScript filter() 方法 find() 和 filter() 的区别与共点 直接上代码 总结 前言 JavaScript 在 ES6 上有很多数组方法,每种方法都有独特的用途和好处. 在开发应用程序时,大多使用数组方法来获取特定的值列表并获取单个或多个匹配项. 在列出这两种方法的区别之前,我们先来一一了解这些方法. JavaScript find() 方法 ES6 find() 方法返回通过测试函数的第一个元素的值.如果没

  • SQLServer中临时表与表变量的区别分析

    在实际使用的时候,我们如何灵活的在存储过程中运用它们,虽然它们实现的功能基本上是一样的,可如何在一个存储过程中有时候去使用临时表而不使用表变量,有时候去使用表变量而不使用临时表呢? 临时表 临时表与永久表相似,只是它的创建是在Tempdb中,它只有在一个数据库连接结束后或者由SQL命令DROP掉,才会消失,否则就会一直存在.临时表在创建的时候都会产生SQL Server的系统日志,虽它们在Tempdb中体现,是分配在内存中的,它们也支持物理的磁盘,但用户在指定的磁盘里看不到文件. 临时表分为本地

  • Android中传值Intent与Bundle的区别小结

    前言 Bundle 翻译成中文的意思是"捆绑",常用在Activity间传递参数,之前一开始并不太待见,原因是Intent本身就可以传递,Intent.putExtra("key", value),为何还要用Bundle呢? 正巧小伙伴问Android传值Intent和Bundle区别,特此总结下: Intent与Bundle在传值上的区别 首先从使用上: Intent方式: 假设需要将数据从页面A传递到B,然后再传递到C. A页面中: Intent intent=

  • C#中的is和as操作符区别小结

    1. is 是验证操作对象是不是自己希望的 运算公式:对象  is  类型 返回true:对象是指定类型 返回false:对象不是指定类型 2. as 是将对象转换成指定类型 运算公式:对象 as 类型 转换成功:对象的类型就是指定的类型 转换失败:返回null 注意: The  "is" and "as" operator must be used with a reference type or nullable type (example:'int' is a

  • 初识C++的const关键字,常量与常变量

    目录 C语言的const 1.const关键字 2.const修饰的只读变量 3.节省空间,避免不必要的内存分配,同时提高效率 4.使用cosnt修饰 4.1修饰一般变量 4.2修饰数组 4.3修饰指针 4.4修饰函数的参数 4.5修饰函数的返回值 C与C++中cosnt的区别 1.在C语言中 2.在C++语言中 3.cosnt修饰指针 3.1常量指针 3.2指针常量 3.3指向常量的指针常量 4.cosnt修饰二级指针 5.cosnt指针练习 总结 C语言的const 注:c语言部分cosnt

  • Swift中常量和变量的区别与声明详解

    Swift是弱类型语言吗? 答案是否定的,Swift 是强类型语言,下面上一个栗子 上面代码中报错了,报的是不能指定 Int 类型为 String 类型. 这里要注意一下在 Swift 中的整形是I,而字符类型首字母是S,都是大写字母 在 Swift 中我们可以直接声明 var 类型变量,可以不直接指定其类型,这是Swift语言的一种机制,当我们声明一个变量的初始值后,就已经确定这个变量是什么类型,Type Inference (类型推断) 如何查看一个变量的类型 在开发中我们一般如何查看一个变

  • JavaScript变量中var,let和const的区别

    目录 前言 ES5与ES6的区别 1. 作用域 2. 全局属性 3. 变量提升与暂时性死区 4. 重复声明 let与const的区别 1. 常量 最佳实践 前言 JavaScript中一共有3种用来声明变量的关键字,分别是var.let和const. 其中var关键字是ES5时代的产物,由于ES5对变量的约束很宽松,使用var来声明变量时经常会出现一些预料之外的问题. ES6为了使变量的定义更加规范,提出了let和const这两个关键字. 因此要解释清楚这三个的区别,首先要从ES5时代和ES6时

随机推荐