2011-10-08 9 views
0

이 오류를 public void setRole(String role) {에 대한 Parameter role should be final.해결하는 방법 checkstyle_error.xml 오류

을 표시하지만 최종해야하는 이유는 받고 있지 않다. 더 많은 공간 및 탭 문자 관련 오류가 발생할 수 있습니다. 어떤 사람이 왜 이런지 말해 줄 수 있어요. 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

매개 변수를 '최종'으로 지정하는 것이 가장 좋습니다. 코드는 메서드 내부의 코드가 참조를 변경하지 못하게하므로 읽기 쉽습니다. 즉,'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 Integer id@param id your comment goes here. 오류 메시지는 Integer이라는 매개 변수에 해당 매개 변수가 없을 때 @param 태그가 있음을 나타냅니다.

  • Javadoc 주석 작성 방법 2 : 사용자의 메소드에 Javadoc이 누락되어 있습니다. 매개 변수에 대한 @param 태그 (오류 메시지의 내용)가 누락되었습니다.

관련 문제