很多时候我遇到过需要在类中定义的辅助函数的场景.以下是一个例子:
public class MyClass { private void BeautifyOrValidate(MyRequest request) { //Beautify or validate request } public void DoOperation(MyRequest request) { BeautifyOrValidate(request); //Do actual operation } }
在上面的例子中,“BeautifyOrValidate”可以是静态的.在一个时候,许多这样的功能可以存在于一个类中.
我想知道是否应该始终对这些方法使用static关键字,或者还有其他一些规则.
解决方法
对于私人成员而言,它并不重要,使其静态是一个微小的优化.
对于公共成员来说,基本规则是当它可以是静态的时候应该是.只是要清楚BeautifyOrValidate(请求)中没有涉及MyClass实例的事实