Static 静态成员
创建一个类,实例化它,然后使用实例的各种方法或者属性
然而有时候我们不想实例化这个类,难道我们就没法用他里面的成员了吗?比如计算矩形的面积,就是长*宽,万年不变
当然可以,用static
关键字,意思是静态的,ramain the same
如果一个class 被定义为static
,那么它不能被继承,同时它所有的成员都得定义成static,不然编译器会报错。静态类只能包含静态成员
这时候这个类更像是一组成员,而失去了普通类的意义。
我们可以定义一个非静态类,然后给他定义一些静态的成员,这个类是可以实例化的,但是无法使用 实例化后的对象的静态成员,可以使用 类名.成员 来调用这个静态成员
上图,定义了一个 正常类,类里面一个静态函数 CalculateArea
,这个静态函数在被调用的时候 只能是 Rectangle.CalculateArea()
这样来调用
这就是常用的静态和非静态 混合使用的类
纯静态的类更像是一种工具集合,工具箱。