静态方法中无状态是什么意思?

时间:2016-07-20 03:50:07

标签: static-methods stateless

静态方法不应包含状态。什么'陈述'在这里意味着什么?

我已经读过静态方法不需要实例化,也不使用实例变量。那我什么时候可以使用静态方法?我看过静态方法不好?我应该在编码时加入它吗?

2 个答案:

答案 0 :(得分:0)

状态表示存储一些信息,加载类时加载静态方法,因此不需要实例来调用静态方法,可以使用类的名称调用此方法,它取决于条件何时使用静态方法。您可以使用静态方法作为产品的单个组件,只需传递参数并完成工作。

答案 1 :(得分:0)

作为答案,这里有一个例子:

public class SomeUtilityClass {
  private static boolean state = false;
  public static void callMeTwiceImBad() throws Exception {
    if (state) {
      throw new Exception("I remember my state from previous call!");
    }
    state = true;
  }
  public static int sum(int a, int b) {
    return a + b;
  }
}

他们自己既不坏也不好,他们只是静止的。