C# 关键字const(字段,局部变量),readonly(字段,数组)

来源(CSDN博客)

From: https://blog.csdn.net/susan19890313/article/details/6845750

C# 关键字const(字段,局部变量),readonly(字段,数组)

2011年10月05日 20:45:00

阅读数:3932

一、const

@1、const能修饰局部变量和字段(常量字段)。const变量的值在编译时就确定了,不可以在运行时改变。

@2、常量字段自动成为静态字段。因为不需要为每个对象实例都生成一个新的字段实例。但若将一个常量字段显示声明为static,会造成编译错误。

二、readonly

@1、只能用于字段。它指出字段值只能从构造器中更改,或直接在声明时指定。即在声明时指定了一个readonly字段的值后,这个值可以在构造器中更改为一个新值。

@2、readonly字段既可以是实例字段,也可以是静态字段。

@3、readonly应用于数组时,其不可更改性是指数组元素的数量一旦确定就不能在更改(除了在构造器中可以更改)即一旦声明好了一个readonly数组,就不允许再用new运算符来创建同一个数组的新实例,无论新实例的数组长度是否有变。但是,数组中每个元素的值是可以改变的。

例如:

class Employee{
	public readonly  int[]  a=new int[6] {1,2,3,4,5,6};
	public void fun(){
		a[3]=30;//允许
		a=new int[8];//不允许
		a=new int[6];// 不允许
	}
}


文章标签: c# class fun

个人分类: c#

Link: http://www.asm32.net/article_details.aspx?id=7315


浏览次数 0 发布时间 2018-05-22 02:28:44 从属分类 C# 【评论】【 】【打印】【关闭
 
| www.asm32.net | 2006版 | 资料中心 | linux | asm/asm32 | C/C++ | VC++ | java | Python | 书签 | ASP.Net书签 | 京ICP备09029108号-1