ElementKindVisitor9 — 요소 종류에 따른 방문자
ElementKindVisitor9 — 요소 종류에 따른 방문자 (RELEASE_9~14)
ElementKindVisitor9은 요소의 종류에 따라 방문 동작을 나눠 처리하는 클래스예요. RELEASE_9부터 RELEASE_14까지의 소스 버전에 맞는 기본 동작을 제공해요. 자바 9에 도입된 모듈(MODULE) 같은 요소 종류도 포함해 더 넓은 범위를 커버하죠.
요소 Xyz가 여러 종류가 될 수 있다면 visitXyz 메서드는 요소의 실제 종류에 맞는 visitXyzAsKind 메서드로 위임하고, 그 메서드들은 인자를 defaultAction으로 넘겨요.
본문
클래스 선언은 다음과 같아요.
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 패키지에 속해요.