2
자바에서 내부 클래스 사용에 의문이 있습니다. 여기 내 코드가있다."정적 최종"필드가 내부 클래스에 허용되는 이유는 무엇입니까?
코드 : 그것은 허용하지 않는다
public class Test{
public class InnerClass{
public static int num = 10;
}
}
. "필드 num은 정적으로 선언 할 수 없으며 정적 필드는 정적 또는 최상위 수준 유형에서만 선언 할 수 있습니다."라는 오류 메시지가 나타납니다.
public class Test{
public class InnerClass{
public static final int num = 10;
}
}
하지만 허용됩니다. InnerClass
을 정적 및 최상위 요소로 선언하지는 않았지만 어떻게 작동합니까?
오류가 답변을 알려주지 않습니까? 클래스가 정적 인 경우 또는 최상위 레벨 인 경우 허용됩니다. –
@ KarthikT - 그건 같은 질문이 아닙니다. –
이 질문은 왜 상수 ('static final') 필드가 허용되는지를 묻는 한 걸음 더 나아가고 있습니다. –