static inner클래스는 외부 클래스의 참조를 가지지않는다.
따라서 외부 객체의 생성없이 바로 부르고, 메서드를 사용하는 것이 가능하다.
컴파일했을때, 'OuterOfStatic$StaticNested.class' 라는 식으로 클래스가 생성되는 것을 확인할 수 있다. OuterOfStatic.class라는 외부 클래스와 상관없이 따로 클래스가 별도로 만들어진다!!
엥 모야... 일반 inner 클래스(non-static) 도 따로 클래스 만들어지넹..
내부 static클래스에서는 외부 클래스의 static만 부를수있지만.
외부 클래스에서는 static클래스의 것들을 자유롭게 사용할수있다.




댓글 없음:
댓글 쓰기