public이 아닌 클래스 내 public 생성자를 보고합니다.

보통 낮은 액세스 수준을 가진 클래스에서 public 생성자를 생성할 이유가 없습니다. 단, 이 검사를 실행하면 일부 리플렉션 호출의 동작이 바뀔 수 있으니 유의하세요. 특히 Class.getConstructor()는 업데이트된 생성자 찾을 수 없습니다(대신 Class.getDeclaredConstructor()를 사용해야 함). 본인의 코드 또는 사용하는 프레임워크의 코드가 getConstructor()를 통해서 생성자 접근성에 의존하는 경우 이 검사를 사용하면 안 됩니다.

예:


  class House {
    public House() {}
  }

빠른 수정을 적용한 후:


  class House {
    House() {}
  }