java – 如果所有方法的类都没有成员变量,那么所有方法都应该是静态的

我刚刚与我工作的人的一个争论,它真的在欺骗我。如果你有一个只有方法calculateRisk或/和calculatePrice的类,该类是不可变的,没有成员变量,如果方法是静态的,以便不必每次都创建类的实例。我使用下面的例子:

public class CalcService {
  public int calcPrice(Trade trade, Date date) {
    ...
  }
  public double calcRisk(Trade trace, Date date) {
    ...
  }
}

那些方法应该是静态的吗?

最佳答案
你描述的类只是一组只对输入操作的函数。使这样的函数成为类的静态方法是完全合理的。这样做会对它们进行逻辑分组,并消除可能的名称冲突。该类实际上充当命名空间,没有更多。

转载注明原文:java – 如果所有方法的类都没有成员变量,那么所有方法都应该是静态的 - 代码日志