笔记002 静态类和静态成员

静态类在C#中相当于sealed abstract类,主要用于存放静态成员,不需实例化,且在程序加载时自动加载。它们是密封的,不能被继承,且不能包含实例构造函数。静态成员包括静态方法和静态字段,它们不依赖于对象实例,可以通过类名直接访问。静态成员可以提供全局变量或工具类的功能,如数学计算、转换方法等。
摘要由CSDN通过智能技术生成

静态类

静态类相当于一个sealed abstract类,主要的一个优点是写在栈中,安全高速稳定,而且在执行的时候,十分优先。

基本简介

类可以声明为 static 的,以指示它仅包含静态成员。静态类在加载包含该类的程序或命名空间时由 .NET Framework 公共语言运行库 (CLR;特指:C#语言) 自动加载。

使用静态类来包含不与特定对象关联的方法。例如,创建一组不操作实例数据并且不与代码中的特定对象关联的方法是很常见的要求。您应该使用静态类来包含那些方法。

主要功能

它们仅包含静态成员

它们不能被实例化。

它们是密封的。

它们不能包含实例构造函数。

因此创建静态类与创建仅包含静态成员和私有构造函数的类大致一样。私有构造函数阻止类被实例化

优点

使用静态类的优点在于,编译器能够执行检查以确保不致偶然地添加实例成员。编译器将保证不会创建此类的实例。

静态类是密封的,因此不可被继承。静态类不能包含构造函数,但仍可声明静态构造函数以分配初始值或设置某个静态状态。

注意事项

静态类不能有实例构造器。

静态类不能有任何实例成员。 静态类不能使用abstract或sealed修饰符。 静态类默认继承自System.Object根类,不能显式指定任何其他基类。

静态类不能指定任何接口实现。

静态类的成员不能有protected或protected internal访问保护修饰符。

静态类基本上与非静态类相同,但存在一个差异:静态类无法实例化。 换句话说,无法使用 new运算符创建类类型的变量。 由于不存在任何实例变量,因此可以使用类名本身访问静态类的员。 例如,如果你具有一个静态类,该类名为 UtilityClass,并且具有一个名为 MethodA 的公共静态方法,如下面的示例所示:

UtilityClass.MethodA();

静态类可以用作只对输入参数进行操作并且不必获取或设置任何内部实例字段的方法集的方便器。 例如,在 .NET 类库中,静态 System.Math 类包含执行数学运算,而无需存储或检索对 Math

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值