静态方法中的无状态是什么意思?
What do you mean by stateless in static method?
静态方法不应包含状态。 'state' 在这里是什么意思?
我看过静态方法不需要实例化,也不要使用实例变量。那么什么时候可以使用静态方法呢?我读过静态方法不好吗?我应该在编码时包括它吗?
State 表示存储一些信息,静态方法在加载 class 时加载,因此不需要实例调用静态方法,您可以使用 class 的名称调用此方法,这取决于何时使用静态方法的条件。您可以将静态方法用作产品的单个组件,只需传递您的参数并完成您的工作。
举个例子作为答案:
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;
}
}
它们本身既不好也不好,它们只是静态的。
静态方法不应包含状态。 'state' 在这里是什么意思?
我看过静态方法不需要实例化,也不要使用实例变量。那么什么时候可以使用静态方法呢?我读过静态方法不好吗?我应该在编码时包括它吗?
State 表示存储一些信息,静态方法在加载 class 时加载,因此不需要实例调用静态方法,您可以使用 class 的名称调用此方法,这取决于何时使用静态方法的条件。您可以将静态方法用作产品的单个组件,只需传递您的参数并完成您的工作。
举个例子作为答案:
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;
}
}
它们本身既不好也不好,它们只是静态的。