JAVA反射(3)

来源:互联网 发布:动态图修改软件 编辑:程序博客网 时间:2024/06/05 14:13

0.简要说明
a) 继承的方法(包含重载、重写和隐藏的)会被编译器强制执行,这些方法无法反射
b) 方法组成元素为:修饰符、返回值、参数、注解和抛出的异常组成
1.涉及名词
a) “桥接方法”
b) “复合方法”

3.Class

基本属性

1) getName() 获取方法名称
2) getDeclaringClass() 获取方法属类的字节码对象
3) getModifiers() 获取方法修饰符
4) getDefaultValue()
5) invoke(Object obj, Object… args) 执行obj方法,方法入参args

返回值相关

1) getReturnType() 方法的返回类型类型Class

参数相关

1) getTypeParameters()   按照声明顺序返回 方法的形参类型Class 对象的数组
2) getParameterTypes()
3) getParameterCount() 该方法的参数数量
4) getGenericParameterTypes()  按照声明顺序返回 方法的形参类型Type 对象的数组

抛出异常相关

1) getExceptionTypes() 返回该方法抛出的异常类型数组Class

注解相关

1) getAnnotation(Class annotationClass) 返回指定类型的注释,否则返回null
2) getAnnotationsByType(Class annotationClass)
3) getAnnotations() 返回此方法上的所有注释
4) getDeclaredAnnotations() 返回直接存在于此元素上的所有注释,不包含继承过来的(貌似:目前方法不能继承注释,类可以)
5) getParameterAnnotations() 按顺序返回个入参的注释数组
6) getAnnotatedReturnType()

方法类型判断

1) isBridge()是否为桥接方法
2) isVarArgs()
3) isSynthetic()是否为复合方法
4) isDefault() 是否为default方法

原创粉丝点击