2013-09-22 3 views
0

계승 및 상속 중 필드 및 메소드의 비 액세서 수정 자에 어떤 규칙이 적용되는지 또는 명확한 정보를 제공 할 수 있습니까? 예 : 비 액세서 수정 자의 상속

class Super { 
    public final int x; 

    protected strictfp final printX() { 
     System.out.println(x); 
    } 
} 

class Sub extends Super { 
} 

상속 된 x와 printX이 아닌 어떤 접근 수정을해야합니까? 이에 대한 자세한 규칙에 대한 링크를 제공 할 수 있습니까?

+1

그래서 당신을 위해 자바 언어 사양을 검색하는 서비스가 아닙니다 ... 섹션 8.4.8 – Zavior

+1

Btw,'super'는 키워드이므로 컴파일되지 않습니다. Java 명명 규칙을 사용하고 클래스의 이름을 대문자 ('Super')로 시작하는 이름으로 지정하십시오. –

+0

http://docs.oracle.com/javase/specs/jls/se7/html/jls-8.html#jls-8.4.8 – chrylis

답변

0

상속은 수퍼 클래스의 멤버가 서브 클래스를 통해 액세스 할 수있는 방법을 나타냅니다. 서브 클래스는 실제로 그것 자신의 복사본을 얻지 못할 것이다. 즉, xprintX은 하위 클래스에서 액세스 할 때 여전히 동일한 수식어를가집니다. 실제로는 수퍼 클래스에서 여전히 선언되어 있기 때문입니다.