2015-01-07 4 views
0

자바에서는 인터페이스 본문에서 메서드와 변수를 공용 액세스로 선언해야합니까? 그렇다면 '공개'액세스 수정 자없이 인터페이스 액세스를 선언함으로써 액세스 권한을 기본 액세스로 유지하면 무엇을 얻을 수 있습니까?자바 인터페이스 멤버

예를 들어

, 무슨 일이

public interface PublicAccess { 

에 반대

interface DefaultAccess { 

를 작성에서 얻을 수 있을까?

+0

인터페이스 멤버는 기본적으로 공개하지만, 액세스 한정자없이 인터페이스는 동일한 패키지에 액세스 할 수 있습니다. – peterremec

+2

귀하의보기가 귀하의 질문과 다릅니다. 공용 인터페이스 자체에 대해 묻고 있습니까? 아니면 방법과 분야에 대해 묻고 있습니까? 인터페이스의 모든 구성원은 공용이므로 다른 방법으로는 가질 수 없습니다. –

+0

감사합니다. 인터페이스 메소드/변수를 구현하는 클래스 메소드가 항상 public 인 경우, 인터페이스 자체를 기본 액세스 즉 비공개로 선언하면 무엇을 얻을 수 있습니까? 쿼리 http://stackoverflow.com/questions/161633/should-methods-in-a-java-interface-be-declared-with-or-without-a-public-access-m – Martin

답변

1

그런 식으로 선언하지 않더라도 인터페이스 메서드는 암시 적으로 public입니다.

인터페이스 자체는 클래스와 동일한 규칙을가집니다. 공개 작업은 평소대로 작동하며 패키지 전용 (즉, 수정자가 필요 없음)은 동일한 패키지의 클래스에서만 인터페이스를 사용할 수 있음을 의미합니다.

1

인터페이스가 공용이 아니면이 인터페이스가 포함 된 패키지 외부에서 액세스 할 수 없습니다.

이것은 당신이 더 잘 이해하는 데 도움이 될 수 있습니다 Java Access Modifiers