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

ElementKindVisitor9 — 요소 종류에 따른 방문자 (RELEASE_9~14)

ElementKindVisitor9은 요소의 종류에 따라 방문 동작을 나눠 처리하는 클래스예요. RELEASE_9부터 RELEASE_14까지의 소스 버전에 맞는 기본 동작을 제공해요. 자바 9에 도입된 모듈(MODULE) 같은 요소 종류도 포함해 더 넓은 범위를 커버하죠.

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

출처: Java API Reference

본문

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

public class ElementKindVisitor9<R,P>
extends SimpleElementVisitor9<R,P>

RELEASE_9부터 RELEASE_14까지의 언어 구조를 다루는 요소 종류별 방문 메서드를 제공해요. 이 시리즈의 가장 포괄적인 버전이라, 자바 14 환경에서는 기본적으로 이 클래스를 쓰는 게 적합해요.

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

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

기본 동작은 defaultAction 호출이며, 필요한 요소 종류만 오버라이드해서 사용해요. javax.lang.model.util 패키지에 속해요.

더 알아보기 (Learn more)