类中的静态变量与C#入门实践

类的静态变量用得好的话,能省不少事,尤其像那种编号递增的场景,简直太合适了。

学生编号的场景就挺经典——每创建一个学生对象,自动给个编号,从 0 开始,依次加 1。你要是每次手动赋值,不光麻烦,还容易出错。关键就在于用个静态变量当全局计数器,所有对象共用它,构造函数里顺手加一下,逻辑就通了。

C#里虽然没有传统意义上的全局变量,但类变量也能干这活。用static关键字声明,作用域只在当前类里,别的类用不了,但你类里任意对象都能访问,这就够用了。

你可以这么搞:

public class Student {
    private static int counter = 0;
    public int ID;

public Student() { ID = counter; counter++; } }

每次 new 一个StudentID都是唯一的,自动加。是不是比维护一个外部变量强多了?而且封装性也更好。

想深入理解,可以去看看这篇C# 中的静态变量》,讲得挺清楚的。另外静态构造函数有时候也用得上,比如初始化静态资源,可以参考这篇,搭配起来更顺手。

,静态变量用好了,能省多麻烦。如果你经常遇到“每个对象唯一编号”的需求,不妨把这个套路收进工具箱里。

ppt 文件大小:4.81MB