-
用在类里的属性、方法前面,这样的静态属性与方法不需要创建实例就能访问,通过类名或对象名都能访问它,静态属性、方法只有“一份”:即如果一个类新建有N个对象,这N 个对象只有同一个静态属性与方法;
-
方法内部的静态变量:方法内部的静态变量,执行完静态变量值不消失,再次执行此对象的方法时,值仍存在,它不是在栈中分配的,是在静态区分析的, 这是与局部变量最大的区别;
-
一个类中如果存在静态构造函数,当程序运行时静态构造函数只执行一次;
- 与多态背道而驰,静态不允许实例化。
1 2 using System; 3 4 namespace teststatic1 5 { 6 class TestClass 7 { 8 static int i = getNumber(); 9 int j = getNumber(); 10 11 static int num = 1; 12 13 static int getNumber() 14 { 15 return num; 16 } 17 18 static void Main(string[] args) 19 { 20 Console.WriteLine("i={0}",i); 21 Console.WriteLine("j={0}", new TestClass().j); 22 Console.ReadKey(); 23 } 24 } 25 } 26