안드로이드 소스를 보면서 static과 더불어 저를 당황하게 하는 것이 내부(inner) 클래스입니다. 10년간 웹개발만 해서인지 내부 클래스 사용 경험이 별로 없어서겠지요.
나름대로 정리해본 내부 클래스 사용 이유입니다.
- 외곽(outer) 클래스의 모든 필드를 자유로이 사용가능
- 내부 클래스는 다중상속의 문제점을 해결하는 하나의 방안이 될 수 있음
(자바는 여전히 하나의 추상클래스 밖에 상속하지 못하기 때문에 제한이 있으며,
특정 클래스를 내부 클래스가 상속하게 하여 다중상속의 기능을 제공)
- 외곽 클래스와 같은 생명주기를 가지면서 외곽 클래스에서만 사용되는 경우
- 그외 주로 이벤트 중심 시스템(Event Driven System)과 같은 제어구현에서 내부클래스가 많이 사용됨
나름대로 정리해본 내부 클래스 사용 이유입니다.
- 외곽(outer) 클래스의 모든 필드를 자유로이 사용가능
- 내부 클래스는 다중상속의 문제점을 해결하는 하나의 방안이 될 수 있음
(자바는 여전히 하나의 추상클래스 밖에 상속하지 못하기 때문에 제한이 있으며,
특정 클래스를 내부 클래스가 상속하게 하여 다중상속의 기능을 제공)
- 외곽 클래스와 같은 생명주기를 가지면서 외곽 클래스에서만 사용되는 경우
- 그외 주로 이벤트 중심 시스템(Event Driven System)과 같은 제어구현에서 내부클래스가 많이 사용됨
'Android' 카테고리의 다른 글
Swing의 이벤트 핸들링 쓰레드 모델 (0) | 2010.03.15 |
---|---|
이벤트 디스패치 쓰레드(Event Dispatch Thread) (0) | 2010.03.08 |
[안드로이드] 파일 위치에 따른 미디어 재생 샘플코드 (2) | 2010.03.08 |
[안드로이드] 이벤트 리스너 구현 유형 (0) | 2010.03.08 |
SW아키텍트 2월 24일(수) 정기 세미나 - 안드로이드 플랫폼 (0) | 2010.02.22 |