java - 即使对于无状态类,静态方法在java中总是不被鼓励吗?

标签 java static-methods

例如,

public class ClassA {
    // no instance fields
    public int method1(int x, int y) {
        // do things...
        return x+y;
    }
}

我强烈渴望声明 public static void int method(int x, int y),但似乎“Java 中的人”不喜欢使用静态方法,除非有充分的理由。大家觉得怎么样?

最佳答案

静态方法在正确的上下文中很好。

尝试弄清楚调用方法是否有意义,即使尚未声明类。

例如,java API 中的 Math 方法。您希望能够方便地输入:

Math.abs(value)

并且不必担心仅仅为了执行此功能而毫无意义地创建一个类。

话虽这么说,对于你的例子:

public class ClassA {
// no instance fields
public int method1(int x, int y) {
    // do things...
    return x+y;
}

}

如果这就是代码所做的全部事情,我看不出您为什么要创建一个没有实例字段的类,只是为了使用一种方法。

我会将其声明为静态。

关于java - 即使对于无状态类,静态方法在java中总是不被鼓励吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37888560/

相关文章:

java - 在@NamedQuery-head 中执行静态方法

unit-testing - 需要帮助使用 Messaging 在 MVVMLight 中编写单元测试用例

java - 在java中的3个类中调用另一个类中的方法

Java - ConcurrentLinkedQueue - 轮询所有

java - 安卓应用程序 : Cannot pass method from another class into the main class

java - 如何在输入某一行后停止扫描?

Javascript 静态方法与性能上的原型(prototype)/实例化方法

java - 背景音乐和共同喜好

java - BroadcastReceiver onRecive 无法正常工作

c# - 按值检索自定义枚举类的正确方法是什么?