Класс Field
- java.lang.Object
-
- java.lang.reflect.AccessibleObject
-
- java.lang.reflect.Field
- Все реализованные интерфейсы:
-
AnnotatedElement,Member
public final class Field extends AccessibleObject implements Member
Объект Field предоставляет информацию о и динамический доступ к отдельному полю класса или интерфейса. Отражённое поле может быть классовым (статическим) или экземпляром поля.
Объект Field разрешает расширяющие преобразования при операциях доступа get или set, но генерирует исключение IllegalArgumentException, если произойдёт сужающее преобразование.
- С момента:
- 1.1
- См. также:
-
Member,Class,Class.getFields(),Class.getField(String),Class.getDeclaredFields(),Class.getDeclaredField(String)
Поля
Поля, объявленные в интерфейсе java.lang.reflect.Member
DECLARED, PUBLIC Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean | equals(Object obj) | Сравнивает этот объект |
Object | get(Object obj) | Возвращает значение поля, представленного этим объектом |
AnnotatedType | getAnnotatedType() | Возвращает объект AnnotatedType, представляющий использование типа для указания объявленного типа поля, представленного этим полем Field. |
<T extends Annotation> | getAnnotation(Class<T> annotationClass) | Возвращает аннотацию данного элемента для заданного типа, если такая аннотация присутствует, в противном случае null. |
<T extends Annotation> | getAnnotationsByType(Class<T> annotationClass) | Возвращает аннотации, связанные с этим элементом. |
boolean | getBoolean(Object obj) | Получает значение статического или экземпляра поля |
byte | getByte(Object obj) | Получает значение статического или экземпляра поля |
char | getChar(Object obj) | Получает значение статического или экземпляра поля типа |
Class<?> | getDeclaringClass() | Возвращает объект |
double | getDouble(Object obj) | Получает значение статического или экземпляра поля типа |
float | getFloat(Object obj) | Получает значение статического или экземпляра поля типа |
Type | getGenericType() | Возвращает объект |
int | getInt(Object obj) | Получает значение статического или экземпляра поля типа |
long | getLong(Object obj) | Получает значение статического или экземпляра поля типа |
int | getModifiers() | Возвращает модификаторы языка Java для поля, представленного этим объектом |
String | getName() | Возвращает имя поля, представленного этим объектом |
short | getShort(Object obj) | Получает значение статического или экземпляра поля типа |
Class<?> | getType() | Возвращает объект |
int | hashCode() | Возвращает хэш-код для этого объекта |
boolean | isEnumConstant() | Возвращает |
boolean | isSynthetic() | Возвращает |
void | set(Object obj,
Object value) | Устанавливает поле, представленное этим объектом |
void | setAccessible(boolean flag) | Устанавливает флаг |
void | setBoolean(Object obj,
boolean z) | Устанавливает значение поля как |
void | setByte(Object obj,
byte b) | Устанавливает значение поля как |
void | setChar(Object obj,
char c) | Устанавливает значение поля как |
void | setDouble(Object obj,
double d) | Устанавливает значение поля как |
void | setFloat(Object obj,
float f) | Устанавливает значение поля как |
void | setInt(Object obj,
int i) | Устанавливает значение поля как |
void | setLong(Object obj,
long l) | Устанавливает значение поля как |
void | setShort(Object obj,
short s) | Устанавливает значение поля как |
String | toGenericString() | Возвращает строку, описывающую этот объект |
String | toString() | Возвращает строку, описывающую этот объект |
Методы, объявленные в классе java.lang.reflect.AccessibleObject
canAccess, getAnnotations, getDeclaredAnnotation, getDeclaredAnnotations, getDeclaredAnnotationsByType, isAccessible, isAnnotationPresent, setAccessible, trySetAccessible Методы, объявленные в классе java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait Методы
setAccessible
public void setAccessible(boolean flag)
Описание скопировано из класса: AccessibleObject
Установите флаг accessible для этого отражённого объекта на указанное булево значение. Значение true указывает, что отражённый объект должен игнорировать проверки контроля доступа языка Java при его использовании. Значение false указывает, что отражённый объект должен придерживаться проверок контроля доступа языка Java при его использовании, с вариацией, указанной в описании класса.
Этот метод может быть использован вызывающим классом C для разрешения доступа к member объекта declaring class D если выполняются следующие условия:
-
CиDнаходятся в одном модуле. - Член является
public, аDнаходится в пакете, к которому модуль, содержащийDexportsпо крайней мере к модулю, содержащемуC. - Член является
protectedstatic,Dнаходится в пакете, к которому модуль, содержащийDэкспортирует по крайней мере к модулю, содержащемуC, иCявляется подклассомD. -
Dнаходится в пакете, к которому модуль, содержащийDopensпо крайней мере к модулю, содержащемуC. Все пакеты в безымянных и открытых модулях открыты для всех модулей, поэтому этот метод всегда выполняется успешно, когдаDнаходится в безымянном или открытом модуле.
Этот метод не может быть использован для разрешения доступа к закрытым членам, членам с доступом по умолчанию (пакет), защищённым экземплярам членов или защищённым конструкторам, когда класс объявления находится в другом модуле, чем вызывающий, и пакет, содержащий класс объявления, не открыт для модуля вызывающего.
Если есть менеджер безопасности, его метод checkPermission сначала вызывается с разрешением ReflectPermission("suppressAccessChecks").
- Overrides:
-
setAccessibleв классеAccessibleObject - Параметры:
-
flag- новое значение для флагаaccessible - Исключения:
-
InaccessibleObjectException- если доступ нельзя включить -
SecurityException- если запрос отклоняется менеджером безопасности - См. также:
-
AccessibleObject.trySetAccessible(),MethodHandles.privateLookupIn(java.lang.Class<?>, java.lang.invoke.MethodHandles.Lookup)
getDeclaringClass
public Class<?> getDeclaringClass()
Возвращает объект Class, представляющий класс или интерфейс, объявляющий поле, представленное этим объектом Field.
- Определено в:
-
getDeclaringClassв интерфейсеMember - Возвращает:
- объект, представляющий объявляющий класс базового члена
getName
public String getName()
Возвращает имя поля, представленного этим объектом Field.
getModifiers
public int getModifiers()
Возвращает модификаторы языка Java для поля, представленного этим объектом Field как целое число. Для декодирования модификаторов должен использоваться класс Modifier.
- Определено в:
-
getModifiersв интерфейсеMember - Возвращает:
- модификаторы языка Java для базового члена
- См. также:
Modifier
isEnumConstant
public boolean isEnumConstant()
Возвращает true, если это поле представляет элемент перечисления; в противном случае возвращает false.
- Возвращает:
-
trueтогда и только тогда, когда это поле представляет элемент перечисления. - С момента:
- 1.5
isSynthetic
public boolean isSynthetic()
Возвращает true , если это поле является синтетическим полем; в противном случае возвращает false.
- Определено в:
-
isSyntheticв интерфейсеMember - Возвращает:
- true, если и только если это поле является синтетическим полем, как определено в Спецификации языка Java.
- С момента:
- 1.5
getType
public Class<?> getType()
Возвращает объект Class, который идентифицирует объявленный тип для поля, представленного этим объектом Field.
- Возвращает:
- объект
Class, идентифицирующий объявленный тип поля, представленного этим объектом
getGenericType
public Type getGenericType()
Возвращает объект Type, представляющий объявленный тип для поля, представленного этим объектом Field.
Если Type является параметризованным типом, возвращаемый объект Type должен точно отражать фактические параметры типа, используемые в исходном коде.
Если тип базового поля является параметром типа или параметризованным типом, он создаётся. В противном случае он разрешается.
- Возвращает:
- объект
Type, представляющий объявленный тип для поля, представленного этим объектомField - Исключения:
-
GenericSignatureFormatError- если сигнатура обобщённого поля не соответствует формату, указанному в Спецификации виртуальной машины Java™ -
TypeNotPresentException- если сигнатура обобщённого типа базового поля ссылается на не существующее объявление типа -
MalformedParameterizedTypeException- если сигнатура обобщённого типа базового поля ссылается на параметризованный тип, который не может быть инстанцирован по какой-либо причине - С момента:
- 1.5
equals
public boolean equals(Object obj)
Сравнивает это Field с указанным объектом. Возвращает true, если объекты одинаковы. Два объекта Field одинаковы, если они были объявлены одним и тем же классом и имеют одинаковое имя и тип.
- Overrides:
-
equalsв классеObject - Параметры:
-
obj- объект ссылки для сравнения. - Возвращает:
-
trueесли этот объект такой же, как аргумент obj;falseв противном случае. - См. также:
-
Object.hashCode(),HashMap
hashCode
public int hashCode()
Возвращает хэш-код для этого Field. Вычисляется как исключающее ИЛИ хэш-кодов имени объявляющего класса базового поля и его имени.
- Overrides:
-
hashCodeв классеObject - Возвращает:
- значение хэш-кода для этого объекта.
- См. также:
-
Object.equals(java.lang.Object),System.identityHashCode(java.lang.Object)
toString
public String toString()
Возвращает строку, описывающую это Field. Формат: модификаторы доступа к полю, если таковые имеются, затем тип поля, пробел, полное имя класса, объявляющего поле, точка, имя поля. Например:
public static final int java.lang.Thread.MIN_PRIORITY
private int java.io.FileDescriptor.fd
Модификаторы располагаются в каноническом порядке, как указано в «Спецификации языка Java». Это public, protected или private вначале, а затем другие модификаторы в следующем порядке: static, final, transient, volatile.
toGenericString
public String toGenericString()
Возвращает строку, описывающую это Field, включая его обобщённый тип. Формат: модификаторы доступа к полю, если таковые имеются, затем обобщённый тип поля, пробел, полное имя класса, объявляющего поле, точка, имя поля.
Модификаторы располагаются в каноническом порядке, как указано в «Спецификации языка Java». Это public, protected или private вначале, а затем другие модификаторы в следующем порядке: static, final, transient, volatile.
- Возвращает:
- строка, описывающая это
Field, включая его обобщённый тип - С момента:
- 1.5
get
public Object get(Object obj)
throws IllegalArgumentException,
IllegalAccessException Возвращает значение поля, представленного этим Field, для указанного объекта. Значение автоматически оборачивается в объект, если оно имеет примитивный тип.
Значение базового поля извлекается следующим образом:
Если базовый член является статическим полем, аргумент obj игнорируется; он может быть null.
В противном случае базовый член является полем экземпляра. Если указанный аргумент obj равен null, метод выбрасывает NullPointerException. Если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле, метод выбрасывает IllegalArgumentException.
Если этот объект Field поддерживает контроль доступа языка Java, а базовое поле недоступно, метод выбрасывает IllegalAccessException. Если базовое поле является статическим, класс, объявивший поле, инициализируется, если он ещё не был инициализирован.
В противном случае значение извлекается из базового экземпляра или статического поля. Если поле имеет примитивный тип, значение оборачивается в объект перед возвращением, в противном случае оно возвращается как есть.
Если поле скрыто в типе obj, значение поля извлекается в соответствии с предыдущими правилами.
- Параметры:
-
obj- объект, из которого необходимо извлечь значение представленного поля - Возвращает:
- значение представленного поля в объекте
obj; примитивные значения упаковываются в соответствующий объект перед возвратом - Исключения:
-
IllegalAccessException- если этотFieldобъект применяет контроль доступа языка Java, и базовое поле недоступно. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или его подклассом или реализацией). -
NullPointerException- если указанный объект равен null, а поле является полем экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершается неудачно.
getBoolean
public boolean getBoolean(Object obj)
throws IllegalArgumentException,
IllegalAccessException Получает значение статического или экземпляра boolean поля.
- Параметры:
-
obj- объект, из которого извлекается значениеboolean - Возвращает:
- значение поля
boolean - Исключения:
-
IllegalAccessException- если этотFieldобъект применяет контроль доступа языка Java, и базовое поле недоступно. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или его подклассом или реализацией), или если значение поля не может быть преобразовано к типуbooleanс помощью расширяющего преобразования. -
NullPointerException- если указанный объект равен null, а поле является полем экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершается неудачно. - См. также:
get(java.lang.Object)
getByte
public byte getByte(Object obj)
throws IllegalArgumentException,
IllegalAccessException Получает значение статического или экземпляра byte поля.
- Параметры:
-
obj- объект, из которого извлекается значениеbyte - Возвращает:
- значение поля
byte - Исключения:
-
IllegalAccessException- если этотFieldобъект применяет контроль доступа языка Java, и базовое поле недоступно. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или его подклассом или реализацией), или если значение поля не может быть преобразовано к типуbyteс помощью расширяющего преобразования. -
NullPointerException- если указанный объект равен null, а поле является полем экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершается неудачно. - См. также:
get(java.lang.Object)
getChar
public char getChar(Object obj)
throws IllegalArgumentException,
IllegalAccessException Получает значение статического или экземпляра поля типа char или другого примитивного типа, преобразуемого к типу char с помощью расширяющего преобразования.
- Параметры:
-
obj- объект, из которого извлекается значениеchar - Возвращает:
- значение поля, преобразованное к типу
char - Исключения:
-
IllegalAccessException- если этотFieldобъект применяет контроль доступа языка Java, и базовое поле недоступно. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или его подклассом или реализацией), или если значение поля не может быть преобразовано к типуcharс помощью расширяющего преобразования. -
NullPointerException- если указанный объект равен null, а поле является полем экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершается неудачно. - См. также:
get(java.lang.Object)
getShort
public short getShort(Object obj)
throws IllegalArgumentException,
IllegalAccessException Получает значение статического или экземпляра поля типа short или другого примитивного типа, преобразуемого к типу short с помощью расширяющего преобразования.
- Параметры:
-
obj- объект, из которого извлекается значениеshort - Возвращает:
- значение поля, преобразованное к типу
short - Исключения:
-
IllegalAccessException- если этотFieldобъект применяет контроль доступа языка Java, и базовое поле недоступно. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или его подклассом или реализацией), или если значение поля не может быть преобразовано к типуshortс помощью расширяющего преобразования. -
NullPointerException- если указанный объект равен null, а поле является полем экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершается неудачно. - См. также:
get(java.lang.Object)
getInt
public int getInt(Object obj)
throws IllegalArgumentException,
IllegalAccessException Получает значение статического или экземпляра поля типа int или другого примитивного типа, преобразуемого к типу int с помощью расширяющего преобразования.
- Параметры:
-
obj- объект, из которого извлекается значениеint - Возвращает:
- значение поля, преобразованное к типу
int - Исключения:
-
IllegalAccessException- если этотFieldобъект применяет контроль доступа языка Java, и базовое поле недоступно. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или его подклассом или реализацией), или если значение поля не может быть преобразовано к типуintс помощью расширяющего преобразования. -
NullPointerException- если указанный объект равен null, а поле является полем экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершается неудачно. - См. также:
get(java.lang.Object)
getLong
public long getLong(Object obj)
throws IllegalArgumentException,
IllegalAccessException Получает значение статического или экземпляра поля типа long или другого примитивного типа, преобразуемого к типу long с помощью расширяющего преобразования.
- Параметры:
-
obj- объект, из которого извлекается значениеlong - Возвращает:
- значение поля, преобразованное к типу
long - Исключения:
-
IllegalAccessException- если этотFieldобъект применяет контроль доступа языка Java, и базовое поле недоступно. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или его подклассом или реализацией), или если значение поля не может быть преобразовано к типуlongс помощью расширяющего преобразования. -
NullPointerException- если указанный объект равен null, а поле является полем экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершается неудачно. - См. также:
get(java.lang.Object)
getFloat
public float getFloat(Object obj)
throws IllegalArgumentException,
IllegalAccessException Получает значение статического или экземпляра поля типа float или другого примитивного типа, преобразуемого к типу float с помощью расширяющего преобразования.
- Параметры:
-
obj- объект, из которого извлекается значениеfloat - Возвращает:
- значение поля, преобразованное к типу
float - Исключения:
-
IllegalAccessException- если этотFieldобъект применяет контроль доступа языка Java, и базовое поле недоступно. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или его подклассом или реализацией), или если значение поля не может быть преобразовано к типуfloatс помощью расширяющего преобразования. -
NullPointerException- если указанный объект равен null, а поле является полем экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершается неудачно. - См. также:
get(java.lang.Object)
getDouble
public double getDouble(Object obj)
throws IllegalArgumentException,
IllegalAccessException Получает значение статического или экземпляра поля типа double или другого примитивного типа, преобразуемого к типу double с помощью расширяющего преобразования.
- Параметры:
-
obj- объект, из которого извлекается значениеdouble - Возвращает:
- значение поля, преобразованное к типу
double - Исключения:
-
IllegalAccessException- если этотFieldобъект применяет контроль доступа языка Java, и базовое поле недоступно. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или его подклассом или реализацией), или если значение поля не может быть преобразовано к типуdoubleс помощью расширяющего преобразования. -
NullPointerException- если указанный объект равен null, а поле является полем экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершается неудачно. - См. также:
get(java.lang.Object)
set
public void set(Object obj,
Object value)
throws IllegalArgumentException,
IllegalAccessException Устанавливает поле, представленное этим объектом Field в указанном объекте аргумента, в указанное новое значение. Новое значение автоматически распаковывается, если базовое поле имеет примитивный тип.
Операция выполняется следующим образом:
Если базовое поле является статическим, аргумент obj игнорируется; он может быть равен null.
В противном случае базовое поле является полем экземпляра. Если указанный аргумент объекта равен null, метод вызывает NullPointerException. Если указанный аргумент объекта не является экземпляром класса или интерфейса, объявляющего базовое поле, метод вызывает IllegalArgumentException.
Если этот объект Field применяет контроль доступа языка Java, и базовое поле недоступно, метод вызывает IllegalAccessException.
Если базовое поле является final, метод вызывает IllegalAccessException, если только setAccessible(true) не завершилось успешно для этого объекта Field и поле не является статическим. Установка final поля таким образом имеет смысл только во время десериализации или реконструкции экземпляров классов с пустыми final полями, прежде чем они станут доступны для доступа другими частями программы. Использование в любом другом контексте может иметь непредсказуемые последствия, включая случаи, когда другие части программы продолжают использовать исходное значение этого поля.
Если базовое поле имеет примитивный тип, предпринимается попытка преобразования распаковки для преобразования нового значения в значение примитивного типа. Если эта попытка не удалась, метод вызывает IllegalArgumentException.
Если после возможной распаковки новое значение не может быть преобразовано в тип базового поля с помощью преобразования идентичности или расширения, метод вызывает IllegalArgumentException.
Если базовое поле является статическим, класс, который объявил поле, инициализируется, если он еще не был инициализирован.
Поле устанавливается в возможно распакованное и расширенное новое значение.
Если поле скрыто в типе obj, значение поля устанавливается в соответствии с предыдущими правилами.
- Параметры:
-
obj- объект, поле которого должно быть изменено -
value- новое значение для поляobj, которое изменяется - Исключения:
-
IllegalAccessException- если этот объектFieldприменяет контроль доступа языка Java, и базовое поле недоступно или является final. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или его подкласса или реализующего его), или если преобразование распаковки не удалось. -
NullPointerException- если указанный объект равен null, а поле является полем экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершилась неудачей.
setBoolean
public void setBoolean(Object obj,
boolean z)
throws IllegalArgumentException,
IllegalAccessException Устанавливает значение поля как boolean для указанного объекта. Этот метод эквивалентен set(obj, zObj), где zObj является объектом Boolean и zObj.booleanValue() == z.
- Параметры:
-
obj- объект, поле которого должно быть изменено -
z- новое значение для поляobj, которое изменяется - Исключения:
-
IllegalAccessException- если этот объектFieldприменяет контроль доступа языка Java, и базовое поле недоступно или является final. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или его подкласса или реализующего его), или если преобразование распаковки не удалось. -
NullPointerException- если указанный объект равен null, а поле является полем экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершилась неудачей. - См. также:
set(java.lang.Object, java.lang.Object)
setByte
public void setByte(Object obj,
byte b)
throws IllegalArgumentException,
IllegalAccessException Устанавливает значение поля как byte для указанного объекта. Этот метод эквивалентен set(obj, bObj), где bObj является объектом Byte и bObj.byteValue() == b.
- Параметры:
-
obj- объект, поле которого должно быть изменено -
b- новое значение для поляobj, которое изменяется - Исключения:
-
IllegalAccessException- если этот объектFieldприменяет контроль доступа языка Java, и базовое поле недоступно или является final. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или его подкласса или реализующего его), или если преобразование распаковки не удалось. -
NullPointerException- если указанный объект равен null, а поле является полем экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершилась неудачей. - См. также:
set(java.lang.Object, java.lang.Object)
setChar
public void setChar(Object obj,
char c)
throws IllegalArgumentException,
IllegalAccessException Устанавливает значение поля как char для указанного объекта. Этот метод эквивалентен set(obj, cObj), где cObj является объектом Character и cObj.charValue() == c.
- Параметры:
-
obj- объект, поле которого должно быть изменено -
c- новое значение для поляobj, которое изменяется - Исключения:
-
IllegalAccessException- если этот объектFieldприменяет контроль доступа языка Java, и базовое поле недоступно или является final. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или его подкласса или реализующего его), или если преобразование распаковки не удалось. -
NullPointerException- если указанный объект равен null, а поле является полем экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершилась неудачей. - См. также:
set(java.lang.Object, java.lang.Object)
setShort
public void setShort(Object obj,
short s)
throws IllegalArgumentException,
IllegalAccessException Устанавливает значение поля как short для указанного объекта. Этот метод эквивалентен set(obj, sObj), где sObj является объектом Short и sObj.shortValue() == s.
- Параметры:
-
obj- объект, поле которого должно быть изменено -
s- новое значение для поляobj, которое изменяется - Исключения:
-
IllegalAccessException- если этот объектFieldприменяет контроль доступа языка Java, и базовое поле недоступно или является final. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или его подкласса или реализующего его), или если преобразование распаковки не удалось. -
NullPointerException- если указанный объект равен null, а поле является полем экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершилась неудачей. - См. также:
set(java.lang.Object, java.lang.Object)
setInt
public void setInt(Object obj,
int i)
throws IllegalArgumentException,
IllegalAccessException Устанавливает значение поля как int для указанного объекта. Этот метод эквивалентен set(obj, iObj), где iObj является объектом Integer и iObj.intValue() == i.
- Параметры:
-
obj- объект, поле которого должно быть изменено -
i- новое значение для поляobj, которое изменяется - Исключения:
-
IllegalAccessException- если этот объектFieldприменяет контроль доступа языка Java, и базовое поле недоступно или является final. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или его подкласса или реализующего его), или если преобразование распаковки не удалось. -
NullPointerException- если указанный объект равен null, а поле является полем экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершилась неудачей. - См. также:
set(java.lang.Object, java.lang.Object)
setLong
public void setLong(Object obj,
long l)
throws IllegalArgumentException,
IllegalAccessException Устанавливает значение поля как long для указанного объекта. Этот метод эквивалентен set(obj, lObj), где lObj является объектом Long и lObj.longValue() == l.
- Параметры:
-
obj- объект, поле которого должно быть изменено -
l- новое значение для поляobj, которое изменяется - Исключения:
-
IllegalAccessException- если этот объектFieldприменяет контроль доступа языка Java, и базовое поле недоступно или является final. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или его подкласса или реализующего его), или если преобразование распаковки не удалось. -
NullPointerException- если указанный объект равен null, а поле является полем экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершилась неудачей. - См. также:
set(java.lang.Object, java.lang.Object)
setFloat
public void setFloat(Object obj,
float f)
throws IllegalArgumentException,
IllegalAccessException Устанавливает значение поля как float для указанного объекта. Этот метод эквивалентен set(obj, fObj), где fObj является объектом Float и fObj.floatValue() == f.
- Параметры:
-
obj— объект, поле которого должно быть изменено -
f— новое значение для поляobj, которое изменяется - Исключения:
-
IllegalAccessException— если этот объектFieldприменяет контроль доступа языка Java, и базовое поле недоступно или является final. -
IllegalArgumentException— если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или подкласса или реализующего интерфейс), или если не удаётся выполнить преобразование разворачивания. -
NullPointerException— если указанный объект равен null, а поле является полем экземпляра. -
ExceptionInInitializerError— если инициализация, вызванная этим методом, завершается неудачно. - См. также:
set(java.lang.Object, java.lang.Object)
setDouble
public void setDouble(Object obj,
double d)
throws IllegalArgumentException,
IllegalAccessException Устанавливает значение поля в качестве double для указанного объекта. Этот метод эквивалентен set(obj, dObj), где dObj является объектом Double, и dObj.doubleValue() == d.
- Параметры:
-
obj— объект, поле которого должно быть изменено -
d— новое значение для поляobj, которое изменяется - Исключения:
-
IllegalAccessException— если этот объектFieldприменяет контроль доступа языка Java, и базовое поле недоступно или является final. -
IllegalArgumentException— если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или подкласса или реализующего интерфейс), или если не удаётся выполнить преобразование разворачивания. -
NullPointerException— если указанный объект равен null, а поле является полем экземпляра. -
ExceptionInInitializerError— если инициализация, вызванная этим методом, завершается неудачно. - См. также:
set(java.lang.Object, java.lang.Object)
getAnnotation
public <T extends Annotation> T getAnnotation(Class<T> annotationClass)
Описание скопировано из интерфейса: AnnotatedElement
Возвращает аннотацию этого элемента для указанного типа, если такая аннотация присутствует, в противном случае null.
- Определено в:
-
getAnnotationв интерфейсеAnnotatedElement - Переопределяет:
-
getAnnotationв классеAccessibleObject - Параметры типа:
-
T— тип аннотации, для которой требуется запрос и возврат, если она присутствует - Параметры:
-
annotationClass— объект Class, соответствующий типу аннотации - Возвращает:
- аннотацию этого элемента для указанного типа аннотации, если она присутствует в этом элементе, иначе null
- Исключения:
-
NullPointerException— если заданный класс аннотации равен null - С:
- 1.5
getAnnotationsByType
public <T extends Annotation> T[] getAnnotationsByType(Class<T> annotationClass)
Возвращает аннотации, связанные с этим элементом. Если аннотаций связанных с этим элементом нет, возвращается массив длиной 0. Разница между этим методом и AnnotatedElement.getAnnotation(Class) заключается в том, что этот метод определяет, является ли его аргумент повторяемым типом аннотации (JLS 9.6), и, если это так, пытается найти одну или несколько аннотаций этого типа, "просматривая" аннотацию-контейнер. Вызывающий метод имеет право изменять возвращаемый массив; это не повлияет на массивы, возвращённые другим вызывающим методам.
- Определено в:
-
getAnnotationsByTypeв интерфейсеAnnotatedElement - Переопределяет:
-
getAnnotationsByTypeв классеAccessibleObject - Параметры типа:
-
T— тип аннотации, для которой требуется запрос и возврат, если она присутствует - Параметры:
-
annotationClass— объект Class, соответствующий типу аннотации - Возвращает:
- все аннотации этого элемента для указанного типа аннотации, если они связаны с этим элементом, иначе массив длиной ноль
- Исключения:
-
NullPointerException— если заданный класс аннотации равен null - С:
- 1.8
getAnnotatedType
public AnnotatedType getAnnotatedType()
Возвращает объект AnnotatedType, представляющий использование типа для указания объявленного типа поля, представленного этим полем Field.
- Возвращает:
- объект, представляющий объявленный тип поля, представленного этим полем Field
- С:
- 1.8
© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/lang/reflect/Field.html