千家信息网

什么是AnnotationVisitor和SignatureVisitor

发表于:2025-02-01 作者:千家信息网编辑
千家信息网最后更新 2025年02月01日,这篇文章主要讲解了"什么是AnnotationVisitor和SignatureVisitor",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"什么是An
千家信息网最后更新 2025年02月01日什么是AnnotationVisitor和SignatureVisitor

这篇文章主要讲解了"什么是AnnotationVisitor和SignatureVisitor",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"什么是AnnotationVisitor和SignatureVisitor"吧!

简介

AnnotationVisitor是用来访问Annotation的,SignatureVisitor使用来访问签名的;

AnnotationVisitor

AnnotationVisitor访问顺序如下:

(visit | visitEnum| visitAnnotation | code visitArray )* visitEnd.
()*可以访问多次,而visitEnd只能访问一次;

  • visit:访问注解的基本值;

  • visitEnum:访问注解的枚举类型值;

  • visitAnnotation:访问嵌套注解类型,也就是一个注解可能被其他注解所注释;

  • visitArray: 访问注解的数组值;

  • visitEnd:访问结束通知;

SignatureVisitor

SignatureVisitor用来访问泛型类型的,其访问顺序如下:

类签名ClassSignature:( visitFormalTypeParameter visitClassBound?
visitInterfaceBound* )* (visitSuperclass visitInterface* )
方法签名MethodSignature:( visitFormalTypeParameter visitClassBound?
visitInterfaceBound* )* ( visitParameterType* visitReturnType visitExceptionType* )
域签名FieldSignature: visitBaseType | visitTypeVariable | visitArrayType | ( visitClassType visitTypeArgument* (visitInnerClassType visitTypeArgument* )* visitEnd ) )

  • visitFormalTypeParameter(final String name):访问正规类型参数;

  • visitClassBound:访问最后一个被访问的正规类型参数的类界限;

  • visitInterfaceBound:访问最后一个被访问的正规类型参数的接口界限;

  • visitSuperclass:访问该类型的超类;

  • visitInterface:访问该类所实现的接口;

  • visitParameterType:访问方法参数类型;

  • visitReturnType:访问方法返回值类型;

  • visitExceptionType:访问方法异常类型;

  • visitBaseType:访问基本类型的签名;

  • visitTypeVariable:访问类型变量的签名;

  • visitArrayType:访问一个数组类型的签名;

  • visitClassType:开始访问类或者接口类型的签名;

  • visitInnerClassType:访问内部类;

  • visitTypeArgument:访问最后被访问类或者接口的无界限类型参数;

  • visitTypeArgument(final char wildcard):访问最后被访问类或者内部类的类型参数;

  • visitEnd:访问结束通知

感谢各位的阅读,以上就是"什么是AnnotationVisitor和SignatureVisitor"的内容了,经过本文的学习后,相信大家对什么是AnnotationVisitor和SignatureVisitor这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!

0