首页 百科知识 变量的类型

变量的类型

时间:2023-10-19 百科知识 版权反馈
【摘要】:一旦静态变量所属的类被装载,则直到包含该类的程序运行结束时它将一直存在。针对类中的非静态变量而言,一旦一个类的新的实例被创建,则直到该实例不再被应用,所在空间被释放为止,该非静态变量将一直存在。结构中的非静态变量随着结构的存在而存在。数组元素也是变量的一种,该变量随该数组实例的存在而存在,每一个数组元素的初始值是该数组元素类型的默认值。

3.3.2 变量的类型

在C#语言中,变量分为七种类型,它们分别是:静态变量(static variables)、非静态变量(instance variables)、数组元素(array elements)、值参数(value parameters)、引用参数(reference parameters)、输出参数(output parameters)及局部变量(local variables)。

看下面的例子:

img36

在上面的变量申明中x是静态变量,y是非静态变量,v[0]是数组元素,a是值参数,b是引用参数,c是输出参数,i是局部变量。

1)静态变量

带有static修饰符申明的变量称为静态变量。一旦静态变量所属的类被装载,则直到包含该类的程序运行结束时它将一直存在。静态变量的初始值就是该变量类型的默认值,为了便于定义赋值检查,静态变量最好在定义时赋值,如static int a=10。

2)非静态变量

不带有static修饰符申明的变量称为非静态变量或实例变量,如int a。

针对类中的非静态变量而言,一旦一个类的新的实例被创建,则直到该实例不再被应用,所在空间被释放为止,该非静态变量将一直存在。同样鉴于方便定义赋值检查,一个类的非静态变量也应该在初始化时赋值。

结构中的非静态变量随着结构的存在而存在。也就是说,当一个结构类型存在或结束时,该结构类型中的变量也随之存在和结束。同样地,结构中的实例变量会随着结构类型变量的初始化而被初始化,如果该结构类型变量定义时未被赋值,那么其中的实例变量也不会被赋值。

3)数组元素

数组元素也是变量的一种,该变量随该数组实例的存在而存在,每一个数组元素的初始值是该数组元素类型的默认值。同样鉴于方便定义赋值检查,数组元素最好在初始时被赋值。

4)局部变量

局部变量是指在一个独立的程序块,一个for语句,一个switch语句中申明的变量,它只在该范围中有效,当程序运行到这一范围时,该变量即开始生效,程序离开时变量就失效了。

与其他几种变量类型不同的是,局部变量不会自动被初始化,所以也就没有默认值,在进行赋值检查的时候,局部变量被认为没有赋值。在局部变量的有效范围内,变量在定义以前就使用是不合法的,比如:

img37

关于值参数、引用参数、输出参数,由于这部分内容与方法或函数有着紧密的联系,所以将在第9章“方法”中进行详细介绍。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈