C#静态类和静态方法以及sealed密封类
静态类和静态成元的使用:
1,当一类是工具类的时候为了让用户调用方便,不需要实例化对象这时可以将该类标记为static;
2,在普通类中标记静态成员这个类不能标记static因为静态类里面基本都是静态方法,如果这个类需要被实例化并且这个类中有一个成员是所有对象共享的数据时那么这个类中的成员标记为static
静态方法的调用只能通过类名.方法名(Person.show())不能通过对象来调用(错误显示:p.show()这里P是Person的实例化对象)
静态成员是在整个程序退出时才释放资源,因此可以在整个程序中共享数据
应注意的问题:
1,静态类不能被实例化和继承,由于静态成员是在程序退出时才释放资源因此尽量避免写静态字段或静态属性最好只写静态方法
2,当给一个普通类写静态字段后系统会默认生成一个静态构造函数而静态类的构造函数只会在第一次使用静态类之前执行,并且只会执行一次
静态构造函数不能有访问修饰符和参数
静态类不能实现接口因为接口中的成员都是实例成员
——————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————————
sealed密封
在类中加关键字sealed就代表这个类是密封类不能被继承
在方法中加关键字sealed代表这个方法所在的类的子类中不能重写这个方法