Java-Method类常用方法总结

该文章参考至:https://blog.csdn.net/Goodbye_Youth/article/details/84036809,本文章仅仅修改了一些个人的理解

一、Method方法的意义

用于获取当前运行方法的信息

二、包含的常用方法

  1. invoke():参数为类的具体实例对象,实现对方法的动态调用
  2. getAnnotatedReturnType():返回一个AnnotatedType对象,表示该方法/构造函数的返回类型
  3. getAnnotatedExceptionTypes():返回一个AnnotatedType对象数组,表示该方法/构造函数声明的异常
  4. getAnnotatedReceiverType():返回一个AnnotatedType对象,表示该方法/构造函数的接收者类型
  5. getAnnotatedParameterTypes():返回一个AnnotatedType对象数组,表示方法/构造函数的形式参数类型
  6. getAnnotation(Class annotationClass):如果该方法对象存在指定类型的注解,则返回该注解,否则返回null
  7. getDeclaredAnnotation(Class annotationClass):如果该方法对象存在指定类型的注解,则返回该注解,否则返回null,只有类级别的注解会被继承得到,对于其他对象而言,getAnnotation() 方法与 getDeclaredAnnotation() 方法作用相同
  8. getAnnotationsByType(Class annotationClass):如果该方法对象存在指定类型的注解,则返回该注解数组,否则返回null,只有类级别的注解会被继承得到,对于其他对象而言,getAnnotationsByType() 方法与 getDeclaredAnnotationsByType() 方法作用相同,getAnnotationsByType() 方法与 getAnnotation() 方法的区别在于 getAnnotationsByType() 方法会检查修饰该方法对象的注解是否为可重复类型注解,如果是则会返回该参数类型的一个或多个注解,@Repeatable 用于声明注解为可重复类型注解,当声明为可重复类型注解后,如果方法注解仍为一个,则 getAnnotation() 方法会正常返回,如果方法注解为多个,则 getAnnotation()方法会返回null
  9. getDeclaredAnnotationsByType(Class annotationClass):如果该方法对象存在指定类型的注解,则返回该注解数组,否则返回null
  10. getAnnotations()、getDeclaredAnnotations():返回该方法对象上的所有注解,如果没有注解,则返回空数组
  11. getModifiers(): 返回修饰该方法对象修饰符的整数形式,使用 Modifier 类对其进行解码:Modifier.toString(method.getModifiers())
  12. getName():返回方法对象名称
  13. isAnnotationPresent(Class<? extends Annotation> annotationClass):如果该方法对象上有指定类型的注解,则返回true,否则为false
  14. isVarArgs():如果该方法对象的参数中存在 可变参,则返回true,否则为false
  15. getDeclaringClass ():返回方法所在类的Class对象
  16. getParameterAnnotations():返回一组注解数组,这些注解以声明顺序修饰该方法对象的参数
  17. getParameterCount():返回该方法对象的参数个数
  18. getParameters():返回一个参数对象数组,该数组表示该方法对象的所有参数
  19. getDefaultValue():返会该注解方法对象表示的成员默认值,如果成员属于基本数据类型,则返回对应的包装类实例,如果没有默认值或者该方法实例不表示注解方法,则返回null
  20. getParameterTypes():返回一个Class对象数组,该数组以声明顺序表示该方法对象的参数对象,会擦除泛型
  21. getReturnType():返回一个Class对象,该Class对象表示该方法对象的返回对象,会擦除泛型
  22. getGenericReturnType():返回一个Type对象,该Type对象表示该方法对象的返回类型,会保留泛型
  23. getExceptionTypes():返回一个Class对象数组,该数组表示由该方法对象抛出的异常对象,会擦除泛型
  24. getGenericExceptionTypes():返回一个Type对象数组,该数组表示由该方法对象抛出的异常类型,会保留泛型
  25. getTypeParameters():返回一个TypeVariable对象数组,该数组表示该方法对象声明列表上的类型变量数组
  26. toString():返回该方法对象的字符串表示形式
  27. toGenericString():返回该方法对象的字符串表示形式,会保留泛型
  28. isAccessible():获取该方法对象的可访问标志
  29. setAccessible(boolean flag):设置该方法对象的可访问标志,在其他类里调用该方法对象时,如果该方法为私有方法,需要设置访问标志为true,否则会报异常
  30. isDefault():判断该方法对象是否为默认方法,如果是则返回true,否则为false
  31. isSynthetic():判断该方法对象是否为合成方法,如果是则返回true,否则为fals
  32. isBridge():判断该方法对象是否桥接方法,如果是则返回true,否则为false
  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值