SimpleElementVisitor6 — 프로그램 요소 방문자

SimpleElementVisitor6 — 프로그램 요소 방문자 (RELEASE_6)

SimpleElementVisitor6은 프로그램 요소를 방문하는 간단한 방문자 클래스예요. RELEASE_6 소스 버전에 맞는 기본 동작을 제공해요. RELEASE_6 및 그 이전 언어 구조에 해당하는 방문 메서드들은 기본적으로 defaultAction을 호출하고, RELEASE_7 이후에 도입된 구조는 visitUnknown을 호출해요.

간단한(simple) 방문자의 특징은 방문 메서드의 기본 동작이 하나로 통일되어 있어서, 관심 있는 요소만 오버라이드하면 된다는 점이에요.

출처: Java API Reference

본문

클래스 선언은 다음과 같아요.

public class SimpleElementVisitor6<R,P>
extends Object
implements ElementVisitor<R,P>

R은 방문 결과의 반환 타입, P는 추가 파라미터 타입이에요.

이 클래스는 요소 종류별로 다음과 같은 방문 메서드를 제공해요.

  • visitPackage, visitType, visitVariable, visitExecutable — 기본 요소 종류.
  • visitTypeParameter, visitModule 등 — 필요에 따라 확장.

기본 동작은 defaultAction(E, P) 호출이에요. defaultActionRuntimeException을 throw하도록 되어 있어서, 아무것도 처리하지 않으려면 이것을 오버라이드해서 null을 반환하게 만들 수 있어요.

RELEASE_6 기준이라 자바 7 이후 구조는 visitUnknown으로 처리돼요. 최신 버전을 대상으로 하면 SimpleElementVisitor7/8/9/14를 쓰는 게 좋아요. javax.lang.model.util 패키지에 속해요.

더 알아보기 (Learn more)