C#中的静态特征
1、静态数据是类的一部分,而不属于某个对象的一部分。
2、声明静态数据使用static关键字。
3、在调用静态数据的时候,应使用类名+“.”+静态数据名。如果使用对象引用来访问静态数据,编译器会报错。
4、静态方法中不能访问非静态数据。
5、静态方法不能被加上virtual关键字,也不能被声明为抽象方法,当然也不能重载。
6、可将静态变量声明为常量,使用const关键字。
7、常量是隐含静态的,不用加static关键字,如果非要加,会报错。
8、常量在声明时必须进行赋值,且常量类型仅限于内置的8种类型。也可在方法中声明本地常量(不过关于权限修饰符,似乎就免了,因为本地数据不需要)。
DEMO:
关于属性的声明,不是很好,大家将就这用吧~!
1 class StaticDemoClass
2 {
3 //声明一个静态变量
4 private static int count = 0;
5 //静态属性
6 public static int Count
7 {
8 set
9 {
10 StaticDemoClass.count = value;
11 }
12 get
13 {
14 return StaticDemoClass.count;
15 }
16 }
17 //声明一个静态方法
18 public static void IncCount()
19 {
20 count++;
21 Console.WriteLine("The StaticDemoClass Object count: " + Count);
22 }
23 //构造函数
24 public StaticDemoClass()
25 {
26 Console.WriteLine("You Create a StaticDemoClass Object!The count will plus 1!");
27 IncCount();
28 }
29 }
30 class MainClass
31 {
32 public static void Main()
33 {
34 //快速创建10个StaticDemoClass对象
35 for (int i = 1; i <= 10; i++)
36 {
37 new StaticDemoClass();
38 }
39 Console.Read();
40 }
41 }
2 {
3 //声明一个静态变量
4 private static int count = 0;
5 //静态属性
6 public static int Count
7 {
8 set
9 {
10 StaticDemoClass.count = value;
11 }
12 get
13 {
14 return StaticDemoClass.count;
15 }
16 }
17 //声明一个静态方法
18 public static void IncCount()
19 {
20 count++;
21 Console.WriteLine("The StaticDemoClass Object count: " + Count);
22 }
23 //构造函数
24 public StaticDemoClass()
25 {
26 Console.WriteLine("You Create a StaticDemoClass Object!The count will plus 1!");
27 IncCount();
28 }
29 }
30 class MainClass
31 {
32 public static void Main()
33 {
34 //快速创建10个StaticDemoClass对象
35 for (int i = 1; i <= 10; i++)
36 {
37 new StaticDemoClass();
38 }
39 Console.Read();
40 }
41 }
希望大家发现不对的地方,及时提出,让我这个小菜鸟能多学习学习!