Javareflect 简明教程

java.lang.reflect - AccessibleObject Class

Introduction

java.lang.reflect.AccessibleObject 类是 Field、Method 和 Constructor 对象的基类。它提供了在使用反射对象时将其标记为抑制默认 Java 语言访问控制检查的能力。当 Fields、Methods 或 Constructors 用于设置或获取字段、调用方法或创建和初始化类的实例时,会执行 public、default(包)访问、protected 和 private 成员的访问检查。在反射对象中设置 accessible 标志允许具有足够权限的高级应用程序,例如 Java 对象序列化或其他持久机制,以通常禁止的方式操作对象。

Class declaration

以下是 java.lang.reflect.AccessibleObject 类的声明 −

public class AccessibleObject
   extends Object
      implements AnnotatedElement

Constructors

Sr.No.

Constructor & Description

1

protected AccessibleObject() 构造器:仅供 Java 虚拟机使用。

Class methods

Sr.No.

Method & Description

1

<T extends Annotation> T getAnnotation(Class<T> annotationClass) 如果存在此类注释,则返回此元素指定类型的注释,否则返回 null。

2

Annotation[] getAnnotations() 返回此元素上存在的所有注释。

3

Annotation[] getDeclaredAnnotations() 返回在此元素上直接存在的注释。

4

boolean isAccessible() 获取此对象的 accessible 标志值。

5

boolean isAnnotationPresent(Class<? extends Annotation> annotationClass) 如果此元素上存在指定类型的注释,则返回 true,否则返回 false。

6

static void setAccessible(AccessibleObject[] array, boolean flag) 便捷方法,用于为对象数组设置可访问标志,其中仅有一个安全检查(为了提高效率)。

7

void setAccessible(boolean flag) 将此对象的 accessible 标志设置为指定的布尔值。

Methods inherited

此类从以下类中继承方法:

  1. java.lang.Object