2012-12-20 3 views
8

여기에 혼란이 있습니다.enum은 정적 클래스를 의미합니까?

클래스를 정적으로 선언 할 수없는 경우 enum은 어떻게 작동합니까? 정적 클래스처럼 보입니다. 인스턴스 자체가 인스턴스화되고 아무 데나 호출 될 수 있기 때문입니다. 다른 필드처럼 정적 필드과 거의 비슷한 열거 형을 사용할 수있는 것처럼 보입니다.

enum을 사용해도 안전합니까?

+1

중첩 된 정적 클래스 – Sam

+1

http://javarevisited.blogspot.in/2011/08/enum-in-java-example-tutorial.html –

답변

11

enum 유형은 자동으로 고정됩니다. 비 static 열거 형을 사용할 수 없으므로 static이 암시됩니다.

JLS 8.9

:

중첩 된 열거 형식은 암시 적으로 정적이다. 중첩 enum 유형을 정적으로 명시 적으로 선언 할 수 있습니다.

+1

아아를 만들 수 있습니다. 나는 그것을 몰랐다. 2 년이 지난 후에도 때로는 자바를 모른다는 느낌이 든다.) – mtk

0

열거 형 내부에서 선언하는 각 열거 형은 열거 형의 정적 멤버입니다. 열거 형 변수의 형식은 열거 형의 형식이며, 간단히 말해서 자체 형식입니다.

관련 문제