Java Hello World传递CheckStyle

所以我是使用checkstyle的新手,对于我简单的HelloWorld java程序,我收到了很多我不理解的错误.

我的代码:

package <package_name>;

/**
* A simple class to compile.
*/
public class HelloWorld {

 /**
  * @param args standard main parameters
  */

    public static void main(String[] args) {
        System.out.println("hello world");
    }
}

我收到错误:

Line 6: Utility classes should not have a public or default constructor
Line 10: Parameter args should be final

为什么会这样?我是否有必要为我的主类创建一个私有构造函数并使默认参数最终?

解决方法:

对于像Main类这样的Utility类,最好创建一个私有构造函数,以便不让java编译器自己编写默认的no args构造函数Main().

在将参数发送到方法之前,Java总是复制参数.这里的final关键字仅表示在方法内部无法重新分配变量. (请注意,如果你有一个像你的情况String []的最终对象,你仍然可以改变对象的属性).

上一篇:Lint,CheckStyle,FindBugs,PMD对比


下一篇:java-如何查找失败的checkstyle规则的名称