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

标签 java static

我刚刚和我一起工作的人发生了争执,这真的让我很烦恼。如果你的类只有 calculateRisk 或/和 calculatePrice 之类的方法,则该类是不可变的并且没有成员变量,如果方法是静态的,则不会有每次都创建一个类的实例。我使用以下示例:

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

这些方法应该是static吗?

最佳答案

您描述的类只是一组仅对输入进行操作的函数。将此类函数设为类的静态方法是完全合理的。这样做可以对它们进行逻辑分组并消除可能的名称冲突。该类实际上充当命名空间,仅此而已。

关于java - 如果类没有成员变量,所有方法都应该是静态的吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/658407/

相关文章:

java - 使用转义序列在java中打印八进制字符

java - 当它可能为空时如何从 Hibernate 返回一个唯一的结果?

java - 用于在 android 中存储 arraylist 的共享首选项

java - 使用私有(private)静态 boolean 值

java - 最终静态与静态最终变量

java - 获取另一个类的变量值

java - SQL查询仅显示一个结果(第一个),但不显示所有结果

java - 是否可以将 COUNT 与 DISTINCT JPA 投影一起使用?

c - 结构中的静态变量位于何处?

groovy - Groovy 中 static 和 final 修饰符的使用