如果不需要类成员,使用静态函数会更好吗?

mag*_*tic 4 c# asp.net static static-methods

我有一个成员函数,它不依赖于类的任何成员变量.(在我的例子中,该类是ASP.Net页面)

该功能受到保护,我不需要在本课程之外.它的唯一目的是从给定对象构建URL.

如果他们不依赖于课程,我是否应该将所有函数设置为静态,即使它们不在本课程之外使用?是否存在性能或可维护性等原因?

Joe*_*orn 5

可能,但我会更进一步.

在这些情况下,你真的想问自己该方法是否仍然属于该类型.如果此方法不依赖于类型的数据,为什么它是该类型的一部分?有更好或更合适的类型吗?你有几个这些,可能分散在几个不同的类型,可以在逻辑上组合在一起?