자바/기본적인 개념

익명 클래스(anonymous class)

백_곰 2021. 12. 16. 10:38

1. 익명 클래스란?

- 클래스의 선언과 객체의 생성을 동시에 하기 때문에, 단 한번만 사용될 수 있고

오직 하나의 객체만을 생성할 수 있는 일회용 클래스이다.

 

- 특이하게도 다른 내부 클래스들과는 달리 이름이 없어서 ①생성자도 가질 수 없고,

②하나의 클래스로 상속받는 동시에 인터페이스를 구현하거나, ③둘 이상의 인터페이스를

구현할 수 없다.

 

- 오로지 하나의 클래스를 상속받거나 단 하나의 인터페이스만을 구현할 수 있다.

 

 

 

2. 이해를 돕기 위한 예제(1)

 

(위 코드를 컴파일 한다면, 아래처럼 4개의 클래스 파일이 생성된다.)

(a)

(a$1.class)

(a$2.class)

(a$3.class)

 

 

 

3. 이해를 돕기 위한 예제(2)

: 왜 익명 클래스를 사용하는 지를 설명하는 예제이다.

 

 

( 위의 코드를 가지고 아래 코드처럼 익명클래스를 사용할 수 있다. )

 

(간결해졌다.)