내가 입력하면 :
void doThis(){
System.out.println("Hello Stackoverflow.");
}
기본 범위는 doThis()
무엇입니까?
공공의? 보호? 은밀한?
답변
기본 범위는 package-private입니다. 동일한 패키지의 모든 클래스는 메소드 / 필드 / 클래스에 액세스 할 수 있습니다. 패키지-개인은 보호 및 공개 범위보다 엄격하지만 개인 범위보다 더 허용됩니다.
추가 정보 :
http://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html
http://mindprod.com/jgloss/scope.html
답변
패키지 private으로 정의 된 것은 클래스 자체, 동일한 패키지 내의 다른 클래스에 의해 액세스 될 수 있지만 서브 클래스가 아닌 패키지 외부에서는 액세스 할 수 없습니다.
편리한 액세스 수준 수정 자 표는 이 페이지 를 참조하십시오 .
답변
액세스 수정자가 없으면 선언 된 패키지 전체에서 클래스 멤버에 액세스 할 수 있습니다. Java 언어 사양 §6.6 에서 자세한 내용을 확인할 수 있습니다 .
인터페이스의 멤버는 명시 적으로 선언되었는지 여부에 관계없이 항상 공개적으로 액세스 할 수 있습니다.
답변
답변
Java 8에서는 이제 기본 범위를 사용 하여 인터페이스 자체 내에서 메소드를 구현할 수 있습니다 (정적 전용).
답변
메소드에 수정자를 제공하지 않으면 기본적으로 패키지 내에 범위가있는 기본 수정자가됩니다.
자세한 내용은 http://wiki.answers.com/Q/What_is_default_access_specifier_in_Java 를 참조하십시오 .