【问题标题】:Using private static methods Instead of private methods In C# [duplicate]在C#中使用私有静态方法而不是私有方法[重复]
【发布时间】:2011-07-23 15:44:26
【问题描述】:

什么时候推荐使用私有静态方法而不是私有 [instance] 方法?

编辑: 我正在寻找一个好的(或最佳实践)。我想知道微软是否使用了这种技术?有人知道吗?我找不到任何解释该主题的博客、文章或示例源代码。

任何帮助将不胜感激。

【问题讨论】:

标签: c# performance coding-style static static-methods


【解决方案1】:

方法声明开头的Static字,基本上是无状态的标志,所以里面发生的事情是纯粹的动作,或者至少应该是。

如果你想使用private static:像你的类的API函数那样使用它,只是进行一些计算/报告......而不改变对象的实际状态,基本上是由instance 方法完成。

这是一种预期的实现方式,这并不意味着这是强制,但因为它是预期,它会帮助其他人开发人员了解您的代码,并在几年后帮助您理解代码,那时您将回到您的项目并且已经忘记了一切。

问候。

【讨论】:

  • static 方法通常对静态变量或方法参数有副作用。这绝不是“无国籍”的迹象。
  • @Ben:事实上,我写道这是预期的行为,但不是强制性的。您始终可以传递给在该方法内部发生更改的类的静态方法实例。设计选择问题。但总的来说,至少我,在查看静态方法时,我认为它应该是不影响状态的东西。
猜你喜欢
  • 1970-01-01
  • 2012-07-14
  • 2015-07-05
  • 1970-01-01
  • 2017-05-23
  • 2010-11-04
  • 2016-06-28
  • 2016-07-27
  • 2022-11-20
相关资源
最近更新 更多