在C#中,“静态”是什么意思?
我真的对C#中static关键字的真实含义感到困惑。我在互联网上浏览了不同的文章,但是没有一篇文章能真正帮助我理解它的含义,其他来源也不可信。我知道Stack
Overflow有一些出色的头脑,可以帮助我理解static的真正含义,例如
- 当它们被初始化时。
- 静态方法,属性,类和构造函数
- 静态vs只读vs常量
回答:
简而言之,静态有效地表示“与一种类型关联,而不是该类型的任何实例”。因此,无论您有0个实例还是一百万个实例,一个类型(在AppDomain内)都有 一
组静态变量。您不需要实例即可访问静态成员,等等。
静态变量初始化的 确切
点取决于是否还有静态构造函数,但从广义上讲,它是“一次,通常在类中发生任何重大事件之前”。(有关详细说明,请参见此博客文章。)
尽管readonly
字段可以是静态的,也可以是实例的(即与类型有关或与类型的实例有关),但const
值 始终是
隐式静态的(它们是编译时常量,因此每个字段只有一个副本是没有意义的)实例)。
有时您可能会static
被描述为“在一个类型的所有实例之间共享”-我个人 不喜欢 该描述,因为它暗示必须至少有一个实例……而实际上,您不需要
任何 实例使用静态成员。我更喜欢将它们视为完全独立的,而不是在实例之间“共享”。
以上是 在C#中,“静态”是什么意思? 的全部内容, 来源链接: utcz.com/qa/429257.html