ElementKindVisitor8 — 요소 종류에 따른 방문자

ElementKindVisitor8 — 요소 종류에 따른 방문자 (RELEASE_8)

ElementKindVisitor8은 요소의 종류(kind)를 기준으로 방문 동작을 나눠 처리하는 클래스예요. RELEASE_8 소스 버전에 맞는 기본 동작을 갖추고 있어요.

여러 종류가 될 수 있는 요소 XyzvisitXyz 메서드는 인자 요소의 실제 종류에 맞는 visitXyzAsKind 메서드로 위임하고, 그 메서드들은 인자를 defaultAction으로 넘겨요.

출처: Java API Reference

본문

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

public class ElementKindVisitor8<R,P>
extends SimpleElementVisitor8<R,P>

RELEASE_8 및 그 이전의 언어 구조를 다루는 요소 종류별 방문 메서드를 제공해요. 자바 8까지만 존재하던 요소 종류를 기준으로 동작하죠.

방문 메서드 구성은 시리즈 전체가 일관돼요.

  • 타입 요소: visitTypeAsClass, visitTypeAsInterface, visitTypeAsEnum, visitTypeAsAnnotationType.
  • 변수 요소: visitVariableAsField, visitVariableAsParameter, visitVariableAsLocalVariable, visitVariableAsExceptionParameter.
  • 실행 요소: visitExecutableAsMethod, visitExecutableAsConstructor.

기본 동작은 defaultAction 호출이에요. 관심 있는 요소 종류만 오버라이드해 쓰는 것이 일반적이에요. javax.lang.model.util 패키지에 속해요.

더 알아보기 (Learn more)