private 또는 protected 필드로의 액세스를 보고합니다.
Java는 현재 객체와 동일한 클래스의 객체인 경우 이러한 필드 액세스를 허용하지만 일부 코드 스타일에서는 이러한 사용을 추천하지 않습니다. 또한 private 필드에 대한 직접적 액세스는 Spring 및 Hibernate와 같은 구성요소 지향의 아키텍처에서 실패할 수 있습니다. 이러한 아키텍처에서는 다른 객체에 대한 모든 액세스가 메서드 호출을 통해 이루어져, 프레임워크가 프록시를 사용하여 액세스를 중개할 수 있도록 기대됩니다.
예:
public class Base {
protected int bar;
void increment(Base base) {
bar++;
base.bar++; // warning: direct access to another object's non-public field
}
}
이 필드를 캡슐화하는 빠른 수정을 사용할 수 있습니다.
검사 구성:
내부 클래스의 액세스도 무시하는 경우 중첩된 내부 클래스의 액세스 무시를 사용합니다.
equals() 메서드의 액세스를 무시합니다.