1.类中所有变量的默认修饰符是private。
2.局部变量必须先初始化才能使用,全局变量(类的成员变量)可以不初始化,默认值为0;
1 static void Main(string[] args) 2 { 3 //M(); 4 //M1(); 5 //M2(); 6 7 int m; 8 if (n > 5) 9 {10 m = 1;11 }12 else13 {14 m++;15 }16 17 Console.ReadKey();18 }19 20 static int n = 10;
如上代码,局部变量m没有赋值,所以不能使用m(m++报错)。
Q:
如图中的代码,输入的结果是?(10,11,12)
1 class Program 2 { 3 static void Main(string[] args) 4 { 5 M(); 6 M1(); 7 M2(); 8 Console.ReadKey(); 9 }10 11 static int n = 10;12 13 static void M()14 {15 Console.WriteLine(n);16 }17 18 static void M1()19 {20 n++;21 Console.WriteLine(n);22 }23 24 static void M2()25 {26 n++;27 Console.WriteLine(n);28 }29 30 }
n初始化的值是10,调用M1后,赋值一次,n=11,调用M2后,赋值一次,n=12.不要与值类型传参混淆了。(值类型传递的是副本,所以最初的n的值不会改变,这是错误的思想,这里是赋值,不是传参)。