본문 바로가기
Language/java

Java_Study 객체지향 프로그래밍_내부 클래스

by gamxong 2022. 7. 7.

 

내부 클래스란?

 

내부 클래스의 장점
 - 내부 클래스에서 외부 클래스의 멤버들을 쉽게 접근 가능
 - 코드의 복잡성을 줄일 수 있음 (캡슐화)

 

 

내부 클래스의 종류와 특징

 

 

내부 클래스 특징
인스턴스 클래스 외부 클래스의 멤버변수 선언위치에 선언
외부 클래스의 인스턴스멤버처럼 다루어 짐.
주로 외부 클래스의 인스턴스멤버들과 관련된 작업에 사용될 목적
스태틱 클래스 외부 클래스의 멤버변수 선언위치에 선언
외부 클래스의 static멤버처럼 다루어짐
주로 외부 클래스의 static 멤버, 특히 static메서드에서 사용될 목적으로 선언
지역 클래스 외부 클래스의 메서드나 초기화블럭 안에 선언
선언된 영역 내부에서만 사용될 수 있음
익명 클래스 클래스의 선언과 객체의 생성을 동시에 하는 이름없는 클래스(일회용)

 

 

익명클래스

 

: 단 한 번만 사용됨, 오직 하나의 객체만을 생성할 수 있는 일회용 클래스.

new 조상클래스이름() {
 // 멤버선언
}

//or

new 구현인터페이스이름() {
	// 멤버선언
}

 

 

class InnerEx6 {
	Object iv = new Object() { void method() {} }; // 익명 클래스	
    static Object cv = new Object() { void method() {} }; // 익명 클래스
    
    void myMethod() {
    	Object lv = new Object() { void method() }; // 익명 클래스
    }
}

 

댓글