Field#getAnnotations() 和 Field#getDelaredAnnotations() 之间的区别
2022-09-01 21:15:07
JavaDoc说:
AccessibleObject#getDelaredAnnotations:
返回直接存在于此元素上的所有批注。与此接口中的其他方法不同,此方法忽略继承的批注。(如果此元素上没有直接存在的批注,则返回长度为零的数组。此方法的调用方可以自由地修改返回的数组;它对返回给其他调用方的数组没有影响。
返回此元素上存在的所有批注。(如果此元素没有批注,则返回长度为零的数组。此方法的调用方可以自由地修改返回的数组;它对返回给其他调用方的数组没有影响。
因为 是从 类 继承的,所以有 Field 对象可以访问它。getAnnotations
java.lang.reflect.AccessibleObject
据我所知,这是它们之间忽略继承注释的唯一区别。我在处理类时得到了这一点,但据我所知,字段不能继承注释。getDeclaredAnnotations