方法可以设为静态,但是应该吗?

方法可以设为静态,但是应该吗?,第1张

方法可以设为静态,但是应该吗?

静态方法与实例方法
10.2.5
C#语言规范的静态和实例成员解释了两者之间的区别。通常,静态方法与实例方法相比只能提供很小的性能增强,但是仅在某些极端情况下(有关此问题的更多详细信息,请参见此答案)。

FxCop或代码分析中的规则CA1822指出:

“在[将成员标记为静态]之后,编译器将向这些成员发出非虚拟的调用站点,这将阻止在运行时检查每次调用,以确保当前对象指针为非空。这可以带来可观的性能提升对于性能敏感的代码。在某些情况下,无法访问当前对象实例表示正确性问题。”

实用
程序类除非在您的设计中有意义,否则不要将它们移至实用程序类。如果静态方法与特定类型相关,就像

ToRadians(doubledegrees)
方法与表示角度的类相关,则将该方法作为该类型的静态成员存在是有意义的(请注意,出于演示目的,这是一个复杂的示例)。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4981532.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-14
下一篇 2022-11-14

发表评论

登录后才能评论

评论列表(0条)

保存