Spec-Zone .ru
спецификации, руководства, описания, API
|
public class AccessibleObject extends Object implements AnnotatedElement
Установка accessible
флаг в отраженном объекте разрешает сложные приложения с достаточным полномочием, такие как Сериализация Объекта Java или другие механизмы персистентности, чтобы управлять объектами способом, который обычно запрещался бы.
По умолчанию отраженный объект не доступен.
Field
, Method
, Constructor
, ReflectPermission
Модификатор | Конструктор и Описание |
---|---|
protected |
AccessibleObject()
Конструктор: только используемый виртуальной машиной Java.
|
Модификатор и Тип | Метод и Описание |
---|---|
<T extends Annotation> |
getAnnotation(Class<T> annotationClass)
Возвраты аннотация этого элемента для указанного типа, если такая аннотация присутствует, еще нуль.
|
Аннотация[] |
getAnnotations()
Аннотации возвратов, которые присутствуют на этом элементе.
|
<T extends Annotation> |
getAnnotationsByType(Class<T> annotationClass)
Аннотации возвратов, которые присутствуют на этом элементе.
|
<T extends Annotation> |
getDeclaredAnnotation(Class<T> annotationClass)
Возвраты аннотация этого элемента для указанного типа, если такая аннотация присутствует, еще нуль.
|
Аннотация[] |
getDeclaredAnnotations()
Аннотации возвратов, которые непосредственно присутствуют на этом элементе.
|
<T extends Annotation> |
getDeclaredAnnotationsByType(Class<T> annotationClass)
Аннотации возвратов, которые непосредственно присутствуют на этом элементе.
|
boolean |
isAccessible()
Получите значение
accessible флаг для этого объекта. |
boolean |
isAnnotationPresent(Class<? extends Annotation> annotationClass)
Возвращает true, если аннотация для указанного типа присутствует на этом элементе, еще ложь.
|
static void |
setAccessible(AccessibleObject[] array, boolean flag)
Метод удобства, чтобы установить
accessible флаг для массива объектов с единственной проверкой защиты (для эффективности). |
void |
setAccessible(boolean flag)
Установите
accessible флаг для этого объекта к обозначенному булеву значению. |
protected AccessibleObject()
public static void setAccessible(AccessibleObject[] array, boolean flag) throws SecurityException
accessible
флаг для массива объектов с единственной проверкой защиты (для эффективности). Во-первых, если есть менеджер безопасности, checkPermission
метод вызывают с a ReflectPermission("suppressAccessChecks")
разрешение.
A SecurityException
повышается если flag
true
но доступность любого из элементов ввода array
возможно, не изменяется (например, если объект элемента является a Constructor
объект для class Class
). В случае такого SecurityException доступность объектов устанавливается в flag
для элементов массива upto (и, исключая) элемент, для которого произошло исключение; доступность элементов вне (и включая) элемент, для которого произошло исключение, неизменна.
array
- массив AccessibleObjectsflag
- новое значение для accessible
флаг в каждом объектеSecurityException
- если запрос отрицается.SecurityManager.checkPermission(java.security.Permission)
, RuntimePermission
public void setAccessible(boolean flag) throws SecurityException
accessible
флаг для этого объекта к обозначенному булеву значению. Значение true
указывает, что отраженный объект должен подавить доступ языка Java, проверяющий, когда это используется. Значение false
указывает, что отраженный объект должен осуществить проверки прав доступа языка Java. Во-первых, если есть менеджер безопасности, checkPermission
метод вызывают с a ReflectPermission("suppressAccessChecks")
разрешение.
A SecurityException
повышается если flag
true
но доступность этого объекта не может быть изменена (например, если этот объект элемента является a Constructor
объект для class Class
).
A SecurityException
повышается, если этот объект является a Constructor
объект для class java.lang.Class
, и flag
истина.
flag
- новое значение для accessible
флагSecurityException
- если запрос отрицается.SecurityManager.checkPermission(java.security.Permission)
, RuntimePermission
public boolean isAccessible()
accessible
флаг для этого объекта.accessible
флагpublic <T extends Annotation> T getAnnotation(Class<T> annotationClass)
AnnotatedElement
getAnnotation
в интерфейсе AnnotatedElement
annotationClass
- соответствие объекта Класса типу аннотацииNullPointerException
- если данная аннотация class является нулемpublic boolean isAnnotationPresent(Class<? extends Annotation> annotationClass)
Значение истинности, возвращенное этим методом, эквивалентно: getAnnotation(annotationClass) != null
Тело метода значения по умолчанию определяется, чтобы быть кодом выше.
isAnnotationPresent
в интерфейсе AnnotatedElement
annotationClass
- соответствие объекта Класса типу аннотацииNullPointerException
- если данная аннотация class является нулемpublic <T extends Annotation> T[] getAnnotationsByType(Class<T> annotationClass)
AnnotatedElement
AnnotatedElement.getAnnotation(Class)
тот этот метод, обнаруживает, если его параметр является повторимым типом аннотации (JLS 9.6), и если так, пытается найти одну или более аннотаций того типа, "просматривая" контейнерную аннотацию. Вызывающая сторона этого метода свободна изменить возвращенный массив; это не будет иметь никакого эффекта на массивы, возвращенные к другим вызывающим сторонам.getAnnotationsByType
в интерфейсе AnnotatedElement
annotationClass
- соответствие объекта Класса типу аннотацииNullPointerException
- если данная аннотация class является нулемpublic Annotation[] getAnnotations()
AnnotatedElement
getAnnotations
в интерфейсе AnnotatedElement
public <T extends Annotation> T getDeclaredAnnotation(Class<T> annotationClass)
AnnotatedElement
getDeclaredAnnotation
в интерфейсе AnnotatedElement
annotationClass
- соответствие объекта Класса типу аннотацииNullPointerException
- если данная аннотация class является нулемpublic <T extends Annotation> T[] getDeclaredAnnotationsByType(Class<T> annotationClass)
AnnotatedElement
AnnotatedElement.getDeclaredAnnotation(Class)
тот этот метод, обнаруживает, если его параметр является повторимым типом аннотации (JLS 9.6), и если так, пытается найти одну или более аннотаций того типа, "просматривая" контейнерную аннотацию. Вызывающая сторона этого метода свободна изменить возвращенный массив; это не будет иметь никакого эффекта на массивы, возвращенные к другим вызывающим сторонам.getDeclaredAnnotationsByType
в интерфейсе AnnotatedElement
annotationClass
- соответствие объекта Класса типу аннотацииNullPointerException
- если данная аннотация class является нулемpublic Annotation[] getDeclaredAnnotations()
AnnotatedElement
getDeclaredAnnotations
в интерфейсе AnnotatedElement
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92