728x90
이 글은 https://youtu.be/CXuA31XcBZ0 를 통해 개념 정리 후 복습용으로 정리한 글입니다.
문제시 바로 삭제하겠습니다.
익명 클래스(anonymous class)
- 이름이 없는 일회용 클래스. 정의와 생성을 동시에
new 조상클래스이름() {
// 멤버 선언
}
new 구현인터페이스이름() {
// 멤버 선언
}
class anonymous {
Object iv = new Object(){ void methd(){} };
static Object cv = new Object(){ void methd(){} };
void myMethod() {
Object lv = new Object(){ void methd(){} };
}
}
사용하는 이유
- 프로그램 내에서 단발성으로 한 번만 사용되어야 하는 객체일 경우
- UI 이벤트 처리, 스레드 객체, 단발성 이벤트 처리
- 확장성을 활용하는 것이 유지보수에서 더 불리할 때
특징
- 클래스를 별도로 만들 필요 없이 코드에서 익명객체를 생성/정의하여 단 한 번의 쓰임을 다하고 소멸한다.
구현 방법 2가지
- 부모/자식 간 상속아래 익명 자식객체를 생성
- 필드의 초기값
- 로컬변수의 초기값
- 매개변수의 매개값
- 인터페이스를 구현한 익명 구현객체 생성
728x90
'Java' 카테고리의 다른 글
[Java] String / StringBuffer / StringBuilder 차이점 & 성능 비교 (0) | 2023.04.18 |
---|---|
[Java] 데이터 타입, 변수 그리고 배열 (0) | 2023.04.12 |
[Java] 내부 클래스(inner class) (0) | 2022.12.26 |
[Java] 추상 클래스(abstract class), 추상 메서드(abstract method) (2) | 2022.12.24 |
[Java] super, package, import, modifier, polymorphism (2) | 2022.12.23 |
댓글