05. Anonymous Inner Class

2020. 1. 19. 02:14CSE/JAVA

* 익명 객체(Anonymous Inner Class)

: 이름이 없는 객체를 말함

  단독으로 생성할 수 없고 클래스를 상속 or 인터페이스를 구현해야만 생성할 수 있음

=>한 번 쓰고 버릴 것. method override 후, 바로 도트로 사용까지 함

=> 주로 interface나 abstract class에서 사용됨

* 익명 자식 객체 생성

: 클래스 상속 시

class Parent{
	void method(){...}
}

public class AnonymousExample{
	Parent parent = new Parent(){		//익명 자식 객체 생성
    	int childField;					//필드 => 외부에서 접근 불가능
        void childMethod(){...}			//메소드 => 외부에서 접근 불가능
        
        @Override
        void method(){...}				//부모 클래스의 메소드를 오버라이딩
 	};
}    

 

* 익명 구현 객체 생성

: 인터페이스 구현 시

interface A{
	public void method1();
}    

public class AnonymousExample{
	A a = new A(){					//익명 구현 객체 생성
    	@Override
        public void method1(){		//메소드 오버라이드
        ...
        }
 	};
}
       

'CSE > JAVA' 카테고리의 다른 글

[자바 객체 지향] 자바와 절차적/구조적 프로그래밍 1  (0) 2021.07.26
06. Exception  (0) 2020.01.20
04. Nested Class, Nested Interface  (0) 2020.01.19
03. Annotation  (0) 2020.01.13
02. Singleton, Final  (0) 2020.01.12