익명 클래스(anonymous class)

2021. 12. 16. 10:38·자바/기본적인 개념

1. 익명 클래스란?

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

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

 

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

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

구현할 수 없다.

 

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

 

 

 

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

 

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

(a)

(a$1.class)

(a$2.class)

(a$3.class)

 

 

 

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

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

 

 

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

 

(간결해졌다.)

'자바 > 기본적인 개념' 카테고리의 다른 글

예외처리(2)  (0) 2021.12.17
예외처리(1)  (0) 2021.12.16
내부 클래스(inner class)  (0) 2021.12.10
인터페이스의 default & static 메서드  (0) 2021.12.09
인터페이스 다형성  (0) 2021.12.08
'자바/기본적인 개념' 카테고리의 다른 글
  • 예외처리(2)
  • 예외처리(1)
  • 내부 클래스(inner class)
  • 인터페이스의 default & static 메서드
백_곰
백_곰
  • 백_곰
    친절한 코딩
    백_곰
  • 전체
    오늘
    어제
    • 분류 전체보기
      • 알고리즘 (with JAVA)
        • 기본 알고리즘
        • 완전 탐색
        • 분할 정복 알고리즘
        • 동적 계획법
        • 탐욕법
        • 코딩 테스트 기출 문제
        • 코드트리 조별과제
      • 백준 (with JAVA)
        • 완전 탐색
        • 분할 정복
        • 그 외
      • 자바
        • 개발 환경 구축하기
        • 팁
        • 기본적인 개념
        • 컬렉션 프레임워크
        • 프로세스와 쓰레드
        • 지네릭스
        • 람다식
        • 스트림
        • 입출력 IO
        • 네트워킹
        • 열거형(enums)
        • java.lang 패키지
        • java.time 패키지
        • 유용한 클래스들
        • 형식화 클래스들
      • 안드로이드 with 자바
        • 응용 문제들
        • 자잘한 문제들
        • 오류 보고서
  • 블로그 메뉴

    • 링크

    • 공지사항

    • 인기 글

    • 태그

      소켓 프로그래밍
      안드로이드 스튜디오
      map()
      제자리 정렬
      file
      코딩테스트
      다형성
      코딩트리조별과제
      불안정 정렬
      InputStream
      람다식
      스트림
      java.lang패키지
      코드트리
      snail
      안정 정렬
      TCP 소켓 프로그래밍
      중간연산
      Arrays
      outputstream
      유용한 클래스
      Collections Framework
      선택 정렬
      역직렬화
      자바 개념
      serializable
      알고스팟
      ServerSocket
      java.time 패키지
      문자 기반 스트림
    • 최근 댓글

    • 최근 글

    • hELLO· Designed By정상우.v4.10.3
    백_곰
    익명 클래스(anonymous class)
    상단으로

    티스토리툴바