이것이 자바다 Chapter09. 중첩클래스 / 중첩인터페이스

이것이 자바다 Chapter09. 중첩클래스 / 중첩인터페이스

이것이 자바다 Chapter09. 중첩클래스 / 중첩인터페이스

1절. 중첩 클래스와 중첩 인터페이스란?

중첩 클래스: 클래스 멤버로 선언된 클래스

class ClassName {

class NetstedClassName { // 중첩 클래스

}

}

중첩 인터페이스 : 클래스 멤버로 선언된 인터페이스

class ClassName {

interface NestedInterfaceName { // 중첩 인터페이스

}

}

중첩 클래스와 인터페이스의 용도

- 해당 클래스에서만 사용하는 클래스와 인터페이스가 필요할 때 활용된다.

- 중첩 인터페이스는 UI 컴포넌트 내부 이벤트 처리에 많이 활용된다.

2절. 중첩 클래스

※ 인스턴스 멤버 클래스

class A {

/** 인스턴스 멤버 클래스 **/

class B {

B() { } ---------- 생성자

int field1; ---------- 인스턴스 필드

// static int field2; ---------- 정적 필드 (x)

void method1() { } ---------- 인스턴스 메소드

//static void method2(){} ---- 정적 메소드 (x)

}

}

A a = new A();

A.B b = a.new B();

b.field1 = 3;

b.method1();

※ 정적 멤버 클래스

※ 로컬 클래스

쓰레드에 사용되는 로컬 클래스

3절. 중첩 클래스의 접근 제한

4절. 중첩 인터페이스

5절. 익명 객체

from http://euik.tistory.com/34 by ccl(A) rewrite - 2021-11-22 14:27:52