programing

Java에서 메서드의 기본 범위는 무엇입니까?

newsource 2022. 8. 9. 23:06

Java에서 메서드의 기본 범위는 무엇입니까?

다음과 같이 입력합니다.

 void doThis(){
     System.out.println("Hello Stackoverflow.");
 }

디폴트 범위는 무엇입니까?doThis()?

공공? 보호?이등병?

기본 범위는 package-private 입니다.같은 패키지의 모든 클래스가 메서드/필드/클래스에 액세스할 수 있습니다.package-private는 보호대상 및 퍼블릭스코프보다 엄격하지만 프라이빗스코프보다 관대합니다.

상세 정보:
http://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol.html
http://mindprod.com/jgloss/scope.html

패키지 개인으로 정의된 모든 것은 클래스 자체, 동일한 패키지 내의 다른 클래스에서 액세스할 수 있지만 패키지 외부에서는 액세스할 수 없습니다.

액세스 레벨 한정자의 편리한 표에 대해서는, 이 페이지를 참조해 주세요.

액세스 수식자가 없으면 클래스 구성원은 선언된 패키지 전체에서 액세스할 수 있습니다.자세한 내용은 Java 언어 사양 © 6.6을 참조하십시오.

인터페이스의 멤버는 명시적으로 선언되었는지 여부에 관계없이 항상 공개적으로 액세스할 수 있습니다.

기본 범위는 "default"입니다.이상하군요. 자세한 내용은 이 참고 자료를 참조하십시오.

Java 8 에서는, 디폴트 스코프(및 스태틱만)를 사용해 인터페이스 자체에 메서드를 실장할 수 있게 되었습니다.

메서드에 수식자를 지정하지 않으면 기본적으로 패키지 내에 스코프가 있는 기본 수식자가 됩니다.
자세한 것은, http://wiki.answers.com/Q/What_is_default_access_specifier_in_Java 를 참조해 주세요.

언급URL : https://stackoverflow.com/questions/714791/what-is-the-default-scope-of-a-method-in-java