[黑马程序员]_静态成员与变量

来源:互联网 发布:美工找素材去什么网站 编辑:程序博客网 时间:2024/05/21 10:49

 

常量
const常量。常量名要大写。一定不会变化的值才能声明为常量。

public const int value=10;


在C#程序中,没有全局变量的概念,所以准备了一种变量类型:静态变量。他在类中类似全局变量,

保存类的公共信息,所有该类的实例(对象)共享该值。
不用new就能用的方法,static方法,static方法其实就是普通的函数。
在static方法中可以调用其他static成员,但是不能调用非static成员。在非static方法中可以调用
static成员。
静态类,不能被new的类就是静态类。静态类一般用来实现一些函数库。

静态变量声明方式:
[访问修饰符] static 数据类型 变量名;
静态变量是用类名来引用它,即:类名.静态变量名;
注:静态方法与静态变量一样,不属于任何特定的实例,属于类全体成员共有,由类名来调用。
非静态方法可以访问类的静态成员,也可以访问类的非静态成员;
静态方法不能使用实例来调用,只能使用类名来调用。
class Program
{
static void Main(string[] args)
{
Person.TotalCount = 30;
Console.WriteLine(Person.TotalCount);
DoIT();
Dog d = new Dog();
d.叫唤();
Person.人口汇报();
Console.ReadKey();
//输出结果:30
//          abc
//          使用全局变量:30
//          叫唤30
}
public static void DoIT()
{
Console.WriteLine("abc");
Console.WriteLine("使用全局变量:{0}",Person.TotalCount);
}
}
public class Person
{
public static int TotalCount;  
public int Age;
public static void 人口汇报()
{
//Console.WriteLine("年龄{0}", Age);
//在static成员中不能调用非static成员
}
public void SayHello()
{
Console.WriteLine("年龄{0}总人口{1}",Age, Person.TotalCount);
}
}
public class Dog
{
public void 叫唤()
{
Console.WriteLine("叫唤:{0}", Person.TotalCount);
}
}