Declaration Access Can Be Weaker  

 

Declaration Access Can Be Weaker  검사는 기존 것보다 약한 접근 권한과 함께 선언될 있는 클래스 멤버를 탐색하기 위해 사용됩니다.

 

검사는 다음 옵션을 가집니다:

클래스 멤버에 대한 패키지 로컬 가시성 레벨을 제안하십시오


만일 체크 박스가 선택되면 검사는 가능한 곳에서 클래스 멤버에 대한 패키지 로컬 가시성 레벨을 적용할 작정일 것입니다.


만일 클래스 또는 클래스 멤버가 패키지 로컬 가시성 레벨을 가질 있지만 엄밀하지 않고(예를 들면, 그것은 보호된 경자 가지만 private 수는 없습니다) 체크 박스가 불가능하게 되면, 그런 클래스 또는 클래스 멤버는 트리 보기에 나타나지 않을 것입니다.

패키지 로컬 가시성 레벨을 톱레벨의 클래스에게 제안하십시오

만일 체크 박스가 선택되면 검사는 -레벨의 클래스를 위해 패키지 로컬 가시성 레벨을 가능한 곳에서 적용할 작정일 것입니다.


만일 클래스 또는 클래스 멤버가 패키지 로컬 가시성 레벨을 가질 있지만 엄밀하지 않고(예를 들면, 그것은 보호된 변경자 가지만 private 수는 없습니다) 체크 박스가 불가능하게 되면, 그런 클래스 또는 클래스 멤버는 트리 보기에 나타나지 않을 것입니다.

오직 외부 클래스로부터 참조될 내부 클래스 멤버에 대한 private   제안하십시오

 

만일 체크 박스가 선택되면 검사는 다른 클래스가 아닌 외부 클래스로부터 오로지 참조되는 내부 클래스 멤버를 가능하다면 private으로 만들 것을 제안 것입니다.

 

만일 Declaration Access Can Be Weaker  체크 박스가 선택되고 Inspection   어떤 문제를 찾는다면, Inspection  윈도우는 약한 접근 변경자(예를 들면, 다른 클래스 등으로부터 참조하지 않는 public 멤버) 가질 있는 클래스와 클래스 멤버를 포함하는Access modifier 탭을 표시합니다.

 

브라우저 윈도우는 당신에게 어는 메소드나 메소드들이 트리 보기에서 선택된 항목이 사용되었는가를 보여주는 부가의 필드를 가집니다. 필드도 메소드가 위치하는 패키지와 클래스 이름을 표시합니다.  메소드 이름을 클릭하면 당신은 에디터의 선언으로 네비게이트 것이고, 메소드 이름 위에서 캐럿을 배치할 것입니다.
트리 보기에서 항목을 오른쪽 버튼을 클릭하는 것에 의해 불리는 문맥 메뉴는 당신에게 문제 해결로서 제안된 접근 수준을 채택하기 위해 프롬프트 합니다.

 

사용

 

예를 들면, 다음 클래스를 잡습니다:

 
package aPackage;
 
public class AClass {
    public void methodA(){
        //some code here
    }
 
    public void methodB(){
        //some code here
    }
 
    public static void main(String[] args) {
        AClass aClass = new AClass();
        aClass.methodB();
    }
}
 

이전의 클래스의 methodB()  사용하고 있는 다른 패키지의 다른 클래스.  

 
package aPackageTwo;
 
import aPackage.AClass;
 
public class AClassTwo {
    void methodInTwo(){
        AClass aClass = new AClass();
        aClass.methodA();
    }
}
 

Inspection  AClass 적용되고 후에다음의 윈도우가 나타날 것입니다.



public으로서 선언된 methodB()  다른 클래스/패키지로부터 절대 불려지지 않고 (그러므로) 선언이 약해질 있는( 경우에 private) 검사에 의해 마크됩니다.