Java의 Inner Class
by 으렴내부 클래스 (Inner Class)
- class 내에 선언된 class를 의미 (원칙적으로 클래스는 독립적이어야 한다)
- 내부클래스에서 외부클래스의 멤버를 쉽게 접근하기 위해 사용한다.
- 코드의 복잡성을 감소시킨다 (캡슐화)
- has-a 상속 관계와 비슷한 형태 지만 has-a는 불러온 형태인데 비해 내부 클래스는 문법적으로 선언된 형태
종류
1. member inner class : 멤버 이너 클래스
- 클래스안에 클래스를 만든 기본 형태
- 이벤트를 처리 할 때 많이 사용 ex. 그래픽환경 마우스 클릭 등
2. static inner class : 스태틱 이너 클래스
- member inner class에 static을 붙임
- 위치는 같다
- 외부 클래스가 없어도 생성이 가능하다
3. local inner class : 로컬 이너 클래스
- method안에 class를 만든 형태
- 함수가 호출될 때만 사용되기 때문에 사용빈도가 낮다. 따라서 거의 사용하지 않는다.
4. Anonymous inner class : 익명 이너 클래스
- 클래스를 만들었지만 이름이 없는 클래스 (래퍼런스가 없다, 1회용)
- 가장 많이 사용함 1회용이기 때문에 자주 사용됨
특징
1. 이너 클래스는 그 안에서만 사용이 가능하다. 메소드화 시킨 class 객체화 시켜 사용한 형태
2. 이너 클래스는 외부 클래스의 모든 멤버들을 마치 자신의 멤버처럼 사용할 수 있다.
3. 이너 클래스는 스테틱 이너 클래스를 제외하고 외부 클래스를 만들고 생성해야 한다.
4. 이벤트 용으로 많이 사용한다.
'Programming Language > JAVA' 카테고리의 다른 글
Java 간단 정리 (0) | 2019.05.03 |
---|---|
Java 간단 정리 (0) | 2019.05.01 |
JAVA Overloading 오버로딩 (0) | 2019.02.20 |
JAVA의 접근 지정자 (0) | 2019.02.20 |
정적 바인딩과 동적 바인딩 (0) | 2019.02.19 |
사이트의 정보
코딩하렴
으렴