익명 클래스

·2025년 5월 10일

Power Java

목록 보기
37/75

7.6 익명 클래스

익명 클래스

: 몸체는 정의되지만, 이름이 없는 클래스
-클래스 정의와 동시에 객체 생성
-이름이 없기 때문에 한 번만 사용 가능

-하나의 객체만 생성하면 되는 경우에 많이 사용함

•사용 방법
1) 부모 클래스에서 상속을 받아서 작성
2) 인터페이스를 구현하여서 작성

부모 클래스 참조변수 = new 부모클래스() {
	...		// 클래스 구현
}

비교문 Ex)
•이름이 있는 클래스

class Car extends Vehicle {
	...
}
Car obj = new Car();

•익명 클래스

Vehicle obj = new Vehicle() { ... };

•인터페이스를 구현하는 익명 클래스

public interface RemoteControl {
	void turnOn();
    void turnOff();
}

public class AnonymousClassTest {
	public static void main(String args[]) {
    	RemoteControl ac = RemoteControl() {
        	public void turnOn() {
            	System.out.pritnln("TV turnOn()");
            }
            public void turnOff() {
            	System.out.println("TV turnOff()");
            }
        };
        ac.turnOn();
        ac.turnOff();
    }
}

출력
TV turnOn()
TV turnOff()

-> 익명 클래스도 내부 클래스와 같이 필드와 다른 메소드를 정의할 수 있음.
*메소드 안에 정의되는 지역 변수의 경우 final로 선언된 변수만 사용이 가능함.
-그래픽 사용자 인터페이스의 이벤트 처리기를 구현하는 경우에 많이 사용됨.
하나만 생성되면 되기 때문.

0개의 댓글