2013-12-12 9 views
-1

OCA 시험 준비 중입니다. 나는 수업이 공개, 보호 또는 개인이 될 수 있다는 것을 읽었습니다. 또한 개인 및 보호 된 클래스는 내부 클래스 (다른 클래스에서 정의 된 클래스) 일 수 있음을 읽었습니다. 나는 내부 클래스 (protected 클래스와 private 클래스)와 .java 파일 (public 클래스)의 클래스가 될 수있는 액세스 수정자가없는 클래스를 선언 할 수 있음을 알았다. 제 질문은 :이 두 클래스가 기본/패키지로 보호 된 수정자를 가지고 있습니까? 아니면 수정자가 무엇입니까?Java 클래스 한정자

+0

가능한 중복 [자바에서 공공, 기본, 보호하고, 개인의 차이 무엇인가? (http://stackoverflow.com/questions/ 215497/in-java-whats-the-difference-between-public-default-protected-and-private) – turbo

+3

[JavaDocs] (http://docs.oracle.com/javase/tutorial/java/javaOO/accesscontrol)를 참조하십시오. .html). –

+0

이제 알 수 있습니다 : 클래스가 다른 패키지에 공개되어 있지 않거나 동일한 패키지에서 보호되거나 기본값이거나 개인 클래스 인 경우 클래스를 가져올 수 없습니다. –

답변

2

AS 응용 프로그램의 외부에 대한 액세스 권한을 제공

      Private Public Protected No modifier 
Same class      Yes  Yes Yes   Yes 
Same package Subclass   No  Yes Yes   Yes 
Same package non-subclass  No  Yes Yes   Yes 
Different package subclass  No  Yes Yes    No 
Different package non-subclass No  Yes No    No