Java; Inner Class
내부 클래스는 말 그대로 클래스 내부에 선언한 클래스다. 내부 클래스를 선언하는 이유는 외부 클래스와 밀접한 관련이 있기 때문이다. 다른 클래스와 협력할 일이 없을때도 내부 클래스로 선언해서 사용한다. 인스턴스 내부 클래스, 정적 내부 클래스, 지역 내부 클래스가 있다. 클래스 이름 없이 선언하고 바로 쓸수 있는 익명 클래스도 있다. 인스턴스 변수를 선언할때와 같은 위치에 선언하며, 외부 클래스 내부에서만 생성하여 사용하는 객체를 선언할때 사용한다. 인스턴스 내부 클래스는 외부 클래스 생성 후 생성된다. 외부 클래스를 생성하지 않으