在C#语言中变量的类型分为七类:静态变量static varibles;非静态变量instance variables;数组元素array elements;值参数value parameters;引用参数reference parameters;输出参数output parameters;局部变量local variables。
静态变量是使用static修饰的,其所属的类一旦被转载,它一直存在直到包含该类的程序运行结束。使静态变量时最好赋初值,便于全局定义赋值检查。
非静态变量:一个类的新实例被创建后,它一直存在直到该实例不再被应用从而使所在的空间被释放为止。使用非静态变量时最好也赋初值。
简单的说,静态变量是被使用在同一个类中的;非静态变量是被使用在空间中的,它可以被同一空间中的多个类调用。
数组变量:它随着数组的存在而存在。
例子1:
class Program
{
public static int x;
int y;
void Fun(int[ ]arr,int a,ref int b,out int c) // x是静态变量;y是非静态变量;arr[0]是数组元素;a是值参数;b是引用参数;c是输出参数;i是局部变量
{
int i=1;
c=a+b;
}
}
例子2:
namespace 常量和变量
{
class Test
{
private int x = 1; //新建类,并定义局部变量
public int y = 2; //新建类,并定义全局变量
}
class Program
{
const double PI = 3.1415926; //定义一个常量表示圆周率,定义的常量是固定值,只能调用,不能再重新赋值。
static void Main(string[] args)
{
Test test1 = new Test(); //初始化Test的值
// int x1 = test1.x; //获取类中的局部变量x,出错,因为局部变量不能跨类调用,只能在for、while或同一个类内使用。
int y1 = test1.y; //获取类中的全局变量
Console.WriteLine(y1);
Console.WriteLine(test1);
Console.ReadKey();
}
}
}