gpt4 book ai didi

c# - 将全类设为静态和将类的函数设为静态有什么区别

转载 作者:行者123 更新时间:2023-11-30 20:10:40 24 4
gpt4 key购买 nike

大家好:将整个类设为静态和将类的函数设为静态有什么区别?我的意思是有任何性能问题吗?

最佳答案

静态类的特性是在C#2才引入的,CLR并没有这样的概念。 C# 中的静态类:

  • 没有构造函数,甚至没有默认的无参数构造函数
  • 是密封的:它不能被子类化
  • 是抽象的:你不能创建它的实例(这也是因为没有构造函数)
  • 只能包含静态成员
  • 不能用作参数或变量类型或泛型类型参数等。
  • 不能指定除object以外的任何基类型

使用“普通”类的静态成员和使用静态类中的静态成员之间没有性能差异。它主要是一种声明意图的方式,即永远不应该有此类的任何实例,而不必提供私有(private)且从未调用的构造函数,并强制编译器检查您是否尝试将其用作普通类。

请注意 extension methods (在 C# 3 中引入)只能在顶级非泛型静态类中声明。

关于c# - 将全类设为静态和将类的函数设为静态有什么区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4756245/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com