2011-10-08 133 views
0

在我的项目checkstyle_error.xml显示此错误Parameter role should be final.如何解决checkstyle_error.xml错误

public void setRole(String role) {,但我没有得到,为什么是最后的。 并可能更多的空间和制表符相关的错误。任何人都可以告诉我这是为什么。任何好的教程来查找checkstyle错误约定。

一些错误,我得到的是:

1. Unused @param tag for 'Integer' 


    /** 
     * Sets id. 
     * @param Integer id 
     */ 
     public void setId(Integer id) { 
      this.id = id; 
     } 

2. Expected @param tag for 'id&apos 



    public void setId(Integer id) { 
      this.id = id; 
     } 
+0

一个最佳实践是让参数成为'final'。 代码更容易阅读,因为它会阻止方法内的代码更改引用:即'role ='other''将被禁止。 – YMomb

回答

0

它想:

public void setRole(final String role) 

,因为你永远不会重新分配role变量。我认为这是有点苛刻,大多数风格指南不需要它。在一般,参数是最终的,如果它不是,我可能会有一个评论。但是,它的确使用final关键字增加了一点清晰度。

1
  • 每当你不明白的CheckStyle错误消息,看着list of checks可能会有所帮助,例如rules concerning whitespace

  • 为什么要使用final parameters

    这是为了保护对一个阴险的错误,错误地改变你的参数值的简便方法。一般而言,简短方法是避免这类错误的更好方法,但最终参数可以成为您编码风格的有益补充。

  • 为什么你不希望使用tab characters

    开发商不应该需要配置的文本编辑器的标签宽度,以便能够读取源代码。

  • How to write Javadoc comments 1:@param id your comment goes here代替@param Integer id。错误消息表明,当没有这样的参数时,称为Integer的参数有@param标记。

  • 如何编写Javadoc注释2:你的方法缺少任何的Javadoc,尤其是@param标签为id参数(这是错误消息说的话)。