Класс Field
- Все реализованные интерфейсы:
-
AnnotatedElement,Member
public final class Field extends AccessibleObject implements Member
Объект Field позволяет выполнять расширяющие преобразования во время операций доступа get или set, но выбрасывает исключение IncompatibleClassChangeError, если происходит сужающее преобразование.
- С тех пор:
- 1.1
- См. также:
Краткое описание полей
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean |
equals |
Сравнивает текущий объект Field с указанным объектом. |
Object |
get |
Возвращает значение поля, представленного этим объектом Field, в указанном объекте. |
AnnotatedType |
getAnnotatedType() |
Возвращает объект AnnotatedType, представляющий использование типа для указания объявленного типа поля, представленного этим объектом Field. |
<T extends Annotation> |
getAnnotation |
Возвращает аннотацию элемента для указанного типа, если такая аннотация присутствует, в противном случае null. |
<T extends Annotation> |
getAnnotationsByType |
Возвращает аннотации, связанные с этим элементом. |
boolean |
getBoolean |
Получает значение статического или экземпляра поля. |
byte |
getByte |
Получает значение статического или экземпляра поля. |
char |
getChar |
Получает значение статического или экземпляра поля типа char или другого примитивного типа, преобразуемого к типу char с помощью расширяющего преобразования. |
Class<?> |
getDeclaringClass() |
Возвращает объект Class, представляющий класс или интерфейс, который объявляет поле, представленное этим объектом Field. |
double |
getDouble |
Получает значение статического или экземпляра поля типа double или другого примитивного типа, преобразуемого к типу double с помощью расширяющего преобразования. |
float |
getFloat |
Получает значение статического или экземпляра поля типа float или другого примитивного типа, преобразуемого к типу float с помощью расширяющего преобразования. |
Type |
getGenericType() |
Возвращает объект Type, который представляет объявленный тип для поля, представленного этим объектом Field. |
int |
getInt |
Получает значение статического или экземпляра поля типа int или другого примитивного типа, преобразуемого к типу int с помощью расширяющего преобразования. |
long |
getLong |
Получает значение статического или экземпляра поля типа long или другого примитивного типа, преобразуемого к типу long с помощью расширяющего преобразования. |
int |
getModifiers() |
Возвращает модификаторы языка Java для поля, представленного этим объектом Field, в виде целого числа. |
String |
getName() |
Возвращает имя поля, представленного этим объектом Field. |
short |
getShort |
Получает значение статического или экземпляра поля типа short или другого примитивного типа, преобразуемого к типу short с помощью расширяющего преобразования. |
Class<?> |
getType() |
Возвращает объект Type, определяющий объявленный тип для поля, представленного этим объектом Field. |
int |
hashCode() |
Возвращает хэш-код для этого объекта Field. |
boolean |
isEnumConstant() |
Возвращает true если это поле представляет элемент перечисления; в противном случае возвращает false. |
boolean |
isSynthetic() |
Возвращает true если это поле является синтетическим; в противном случае возвращает false. |
void |
set |
Устанавливает поле, представленное этим объектом Field, в указанном объекте с указанным новым значением. |
void |
setAccessible |
Устанавливает флаг доступности для этого отражаемого объекта. |
void |
setBoolean |
Устанавливает значение поля как boolean в указанном объекте. |
void |
setByte |
Устанавливает значение поля как byte в указанном объекте. |
void |
setChar |
Устанавливает значение поля как char в указанном объекте. |
void |
setDouble |
Устанавливает значение поля как double в указанном объекте. |
void |
setFloat |
Устанавливает значение поля как float в указанном объекте. |
void |
setInt |
Устанавливает значение поля как int в указанном объекте. |
void |
setLong |
Устанавливает значение поля как long в указанном объекте. |
void |
setShort |
Устанавливает значение поля как short в указанном объекте. |
String |
toGenericString() |
Возвращает строковое представление этого объекта Field, включая его тип дженериков. |
String |
toString() |
Возвращает строковое представление этого объекта Field. |
Методы, объявленные в классе java.lang.reflect.AccessibleObject
canAccess, getAnnotations, getDeclaredAnnotation, getDeclaredAnnotations, getDeclaredAnnotationsByType, isAccessible, isAnnotationPresent, setAccessible, trySetAccessible
Подробное описание методов
setAccessible
public void setAccessible(boolean flag)
AccessibleObjectaccessible для этого отражённого объекта на указанное булево значение. Значение 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находится в безымянном или открытом модуле.
Этот метод не может использоваться для включения доступа к закрытым членам, членам с доступом по умолчанию (пакет), защищённым экземплярам членов или защищённым конструкторам, когда класс объявления находится в другом модуле, чем вызывающий, и пакет, содержащий класс объявления, не открыт для модуля вызывающего.
Этот метод не может использоваться для включения записи доступа к неизменяемому конечному полю. Следующие поля являются неизменяемыми:
- статические конечные поля, объявленные в любом классе или интерфейсе
- конечные поля, объявленные в скрытом классе
- конечные поля, объявленные в записи
Флаг accessible при true подавляет проверки контроля доступа языка Java только для включения чтения доступа к этим неизменяемым конечным полям.
Если существует менеджер безопасности, его метод checkPermission сначала вызывается с разрешением ReflectPermission("suppressAccessChecks").
- Overrides:
-
setAccessibleв классеAccessibleObject - Параметры:
-
flag- новое значение для флагаaccessible - Исключения:
-
InaccessibleObjectException- если доступ не может быть включён -
SecurityException- если запрос отклоняется менеджером безопасности - См. также:
getDeclaringClass
public Class<?> getDeclaringClass()
Class, представляющий класс или интерфейс, объявляющий поле, представленное этим объектом Field.- Определяется:
-
getDeclaringClassв интерфейсеMember - Возвращает:
- объект, представляющий класс объявления базового члена
getName
public String getName()
Field.- Определяется:
-
getNameв интерфейсеMember - Возвращает:
- простое имя базового члена
getModifiers
public int getModifiers()
Field в виде целого числа. Для декодирования модификаторов следует использовать класс Modifier.- Определяется:
-
getModifiersв интерфейсеMember - Возвращает:
- модификаторы языка Java для базового члена
- См. Спецификацию языка Java:
- 8.3 Объявление полей
9.3 Объявление полей (констант)
- См. также:
isEnumConstant
public boolean isEnumConstant()
true, если это поле представляет элемент перечислимого класса; в противном случае возвращает false.- Возвращает:
-
trueтогда и только тогда, когда это поле представляет элемент перечислимого класса. - См. Спецификацию языка Java:
- 8.9.1 Постоянные элементы перечисления
- С:
- 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, представляющий объявленный тип для поля, представленного этим объектомField - Исключения:
-
GenericSignatureFormatError- если сигнатура обобщённого поля не соответствует формату, указанному в Спецификации виртуальной машины Java -
TypeNotPresentException- если сигнатура обобщённого типа базового поля ссылается на не существующее объявление класса или интерфейса -
MalformedParameterizedTypeException- если сигнатура обобщения базового поля ссылается на параметризованный тип, который не может быть создан по какой-либо причине - С:
- 1.5
equals
public boolean equals(Object obj)
Field с указанным объектом. Возвращает true, если объекты идентичны. Два объекта Field идентичны, если они объявлены одним и тем же классом и имеют одинаковое имя и тип.- Overrides:
-
equalsв классеObject - Параметры:
-
obj- объект-ссылка, с которым нужно сравнить. - Возвращает:
-
true, если этот объект такой же, как аргумент obj;falseв противном случае. - См. также:
hashCode
public int hashCode()
Field . Вычисляется как исключительное ИЛИ хэш-кодов имени класса объявления базового поля и его имени.- Overrides:
-
hashCodeв классеObject - Возвращает:
- значение хэш-кода для этого объекта.
- См. также:
toString
public String toString()
public static final int java.lang.Thread.MIN_PRIORITY
private int java.io.FileDescriptor.fd
Модификаторы упорядочены в соответствии с «Спецификацией языка Java». Это public, protected или private вначале, а затем другие модификаторы в следующем порядке: static, final, transient, volatile.
- Overrides:
-
toStringв классеObject - Возвращает:
- строку, описывающую это поле
- См. Спецификацию языка Java:
- 8.3.1 Модификаторы полей
toGenericString
public String toGenericString()
Модификаторы упорядочены в соответствии с «Спецификацией языка Java». Это public, protected или private вначале, а затем другие модификаторы в следующем порядке: static, final, transient, volatile.
- Возвращает:
- строку, описывающую это поле, включая его дженерик-тип
- См. Спецификацию языка Java:
- 8.3.1 Модификаторы полей
- Since:
- 1.5
get
public Object get(Object obj) throws IllegalArgumentException, IllegalAccessException
Значение базового поля извлекается следующим образом:
Если базовое поле статическое, аргумент obj игнорируется; он может быть null.
В противном случае, базовое поле - это поле экземпляра. Если указанный аргумент obj равен null, метод выбрасывает исключение NullPointerException. Если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле, метод выбрасывает исключение IllegalArgumentException.
Если этот объект проверяет контроль доступа языка Java, и базовое поле недоступно, метод выбрасывает исключение IllegalAccessException. Если базовое поле статическое, класс, объявивший поле, инициализируется, если он ещё не инициализирован.
В противном случае, значение извлекается из базового поля экземпляра или статического поля. Если поле имеет примитивный тип, значение оборачивается в объект перед возвратом, в противном случае возвращается как есть.
Если поле скрыто в типе obj, значение поля извлекается в соответствии с предыдущими правилами.
- Параметры:
-
obj- объект, из которого извлекается значение представленного поля - Возвращает:
- значение представленного поля в объекте
obj; примитивные значения оборачиваются в соответствующие объекты перед возвратом - Исключения:
-
IllegalAccessException- если этот объект проверяет контроль доступа языка Java, и базовое поле недоступно. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или подкласса или реализующего его интерфейс). -
NullPointerException- если указанный объект равен null, а поле - поле экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершается неудачно.
getBoolean
public boolean getBoolean(Object obj) throws IllegalArgumentException, IllegalAccessException
boolean.- Параметры:
-
obj- объект для извлечения значенияboolean - Возвращает:
- значение поля
boolean - Исключения:
-
IllegalAccessException- если этот объект проверяет контроль доступа языка Java, и базовое поле недоступно. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или подкласса или реализующего его интерфейс), или если значение поля нельзя преобразовать в типbooleanс помощью расширяющего преобразования. -
NullPointerException- если указанный объект равен null, а поле - поле экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершается неудачно. - См. также:
getByte
public byte getByte(Object obj) throws IllegalArgumentException, IllegalAccessException
byte.- Параметры:
-
obj- объект для извлечения значенияbyte - Возвращает:
- значение поля
byte - Исключения:
-
IllegalAccessException- если этот объект проверяет контроль доступа языка Java, и базовое поле недоступно. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или подкласса или реализующего его интерфейс), или если значение поля нельзя преобразовать в типbyteс помощью расширяющего преобразования. -
NullPointerException- если указанный объект равен null, а поле - поле экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершается неудачно. - См. также:
getChar
public char getChar(Object obj) throws IllegalArgumentException, IllegalAccessException
char или другого примитивного типа, преобразуемого в тип char с помощью расширяющего преобразования.- Параметры:
-
obj- объект для извлечения значенияchar - Возвращает:
- значение поля, преобразованное к типу
char - Исключения:
-
IllegalAccessException- если этот объект проверяет контроль доступа языка Java, и базовое поле недоступно. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или подкласса или реализующего его интерфейс), или если значение поля нельзя преобразовать в типcharс помощью расширяющего преобразования. -
NullPointerException- если указанный объект равен null, а поле - поле экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершается неудачно. - См. также:
getShort
public short getShort(Object obj) throws IllegalArgumentException, IllegalAccessException
short или другого примитивного типа, преобразуемого в тип short с помощью расширяющего преобразования.- Параметры:
-
obj- объект для извлечения значенияshort - Возвращает:
- значение поля, преобразованное к типу
short - Исключения:
-
IllegalAccessException- если этот объект проверяет контроль доступа языка Java, и базовое поле недоступно. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или подкласса или реализующего его интерфейс), или если значение поля нельзя преобразовать в типshortс помощью расширяющего преобразования. -
NullPointerException- если указанный объект равен null, а поле - поле экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершается неудачно. - См. также:
getInt
public int getInt(Object obj) throws IllegalArgumentException, IllegalAccessException
int или другого примитивного типа, преобразуемого в тип int с помощью расширяющего преобразования.- Параметры:
-
obj- объект для извлечения значенияint - Возвращает:
- значение поля, преобразованное к типу
int - Исключения:
-
IllegalAccessException- если этот объект проверяет контроль доступа языка Java, и базовое поле недоступно. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или подкласса или реализующего его интерфейс), или если значение поля нельзя преобразовать в типintс помощью расширяющего преобразования. -
NullPointerException- если указанный объект равен null, а поле - поле экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершается неудачно. - См. также:
getLong
public long getLong(Object obj) throws IllegalArgumentException, IllegalAccessException
long или другого примитивного типа, преобразуемого к типу long с помощью расширяющего преобразования.- Parameters:
-
obj- объект, из которого нужно извлечь значениеlong - Returns:
- значение поля, преобразованное к типу
long - Throws:
-
IllegalAccessException- если этот объектFieldнавязывает контроль доступа языка Java, и базовое поле недоступно. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или подклассом или реализующим его), или если значение поля не может быть преобразовано к типуlongс помощью расширяющего преобразования. -
NullPointerException- если указанный объект равен null, и поле является полем экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершается с ошибкой. - See Also:
getFloat
public float getFloat(Object obj) throws IllegalArgumentException, IllegalAccessException
float или другого примитивного типа, преобразуемого к типу float с помощью расширяющего преобразования.- Parameters:
-
obj- объект, из которого нужно извлечь значениеfloat - Returns:
- значение поля, преобразованное к типу
float - Throws:
-
IllegalAccessException- если этот объектFieldнавязывает контроль доступа языка Java, и базовое поле недоступно. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или подклассом или реализующим его), или если значение поля не может быть преобразовано к типуfloatс помощью расширяющего преобразования. -
NullPointerException- если указанный объект равен null, и поле является полем экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершается с ошибкой. - See Also:
getDouble
public double getDouble(Object obj) throws IllegalArgumentException, IllegalAccessException
double или другого примитивного типа, преобразуемого к типу double с помощью расширяющего преобразования.- Parameters:
-
obj- объект, из которого нужно извлечь значениеdouble - Returns:
- значение поля, преобразованное к типу
double - Throws:
-
IllegalAccessException- если этот объектFieldнавязывает контроль доступа языка Java, и базовое поле недоступно. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или подклассом или реализующим его), или если значение поля не может быть преобразовано к типуdoubleс помощью расширяющего преобразования. -
NullPointerException- если указанный объект равен null, и поле является полем экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершается с ошибкой. - See Also:
set
public void set(Object obj, Object value) throws IllegalArgumentException, IllegalAccessException
Field, в указанном объекте аргумента на указанное новое значение. Новое значение автоматически распаковывается, если базовое поле имеет примитивный тип. Операция выполняется следующим образом:
Если базовое поле статическое, аргумент obj игнорируется; он может быть null.
В противном случае базовое поле является полем экземпляра. Если указанный объект аргумент равен null, метод выбрасывает NullPointerException. Если указанный объект аргумент не является экземпляром класса или интерфейса, объявляющего базовое поле, метод выбрасывает IllegalArgumentException.
Если этот объект Field навязывает контроль доступа языка Java, и базовое поле недоступно, метод выбрасывает IllegalAccessException.
Если базовое поле является final, этот объект Field имеет доступ для записи тогда и только тогда, когда выполнены следующие условия:
-
setAccessible(true)успешно выполнился для этого объектаField; - поле не статическое; и
- класс, объявляющий поле, не является скрытым классом; и
- класс, объявляющий поле, не является классом-записью.
IllegalAccessException. Установка final-поля таким способом имеет смысл только во время десериализации или реконструкции экземпляров классов с полями blank final, прежде чем они станут доступными для доступа другим частям программы. Использование в любом другом контексте может иметь непредсказуемые последствия, включая случаи, в которых другие части программы продолжают использовать исходное значение этого поля.
Если базовое поле имеет примитивный тип, пытается выполнить преобразование распаковки для преобразования нового значения в значение примитивного типа. Если эта попытка завершается неудачно, метод выбрасывает IllegalArgumentException.
Если после возможного распаковки новое значение не может быть преобразовано к типу базового поля с помощью идентичного или расширяющего преобразования, метод выбрасывает IllegalArgumentException.
Если базовое поле статическое, класс, который объявлял поле, инициализируется, если он еще не был инициализирован.
Поле устанавливается на возможно распакованное и расширенное новое значение.
Если поле скрыто в типе obj, значение поля устанавливается в соответствии с предыдущими правилами.
- Parameters:
-
obj- объект, чье поле должно быть изменено -
value- новое значение для поляobj, которое изменяется - Throws:
-
IllegalAccessException- если этот объектFieldнавязывает контроль доступа языка Java, и базовое поле недоступно или final; или если у этого объектаFieldнет доступа для записи. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или подклассом или реализующим его), или если преобразование распаковки завершается неудачно. -
NullPointerException- если указанный объект равен null, и поле является полем экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершается с ошибкой.
setBoolean
public void setBoolean(Object obj, boolean z) throws IllegalArgumentException, IllegalAccessException
boolean в указанном объекте. Этот метод эквивалентен set(obj, zObj), где zObj - это объект Boolean, и zObj.booleanValue() == z. - Parameters:
-
obj- объект, чье поле должно быть изменено -
z- новое значение для поляobj, которое изменяется - Throws:
-
IllegalAccessException- если этот объектFieldнавязывает контроль доступа языка Java, и базовое поле либо недоступно, либо final; или если у этого объектаFieldнет доступа для записи. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или подклассом или реализующим его), или если преобразование распаковки завершается неудачно. -
NullPointerException- если указанный объект равен null, и поле является полем экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершается с ошибкой. - See Also:
setByte
public void setByte(Object obj, byte b) throws IllegalArgumentException, IllegalAccessException
byte в указанном объекте. Этот метод эквивалентен set(obj, bObj), где bObj - это объект Byte, и bObj.byteValue() == b.- Parameters:
-
obj- объект, чье поле должно быть изменено -
b- новое значение для поляobj, которое изменяется - Throws:
-
IllegalAccessException- если этот объектFieldнавязывает контроль доступа языка Java, и базовое поле либо недоступно, либо final; или если у этого объектаFieldнет доступа для записи. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или подклассом или реализующим его), или если преобразование распаковки завершается неудачно. -
NullPointerException- если указанный объект равен null, и поле является полем экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершается с ошибкой. - See Also:
setChar
public void setChar(Object obj, char c) throws IllegalArgumentException, IllegalAccessException
set(obj, cObj), где cObj — объект Character и cObj.charValue() == c. - Parameters:
-
obj- объект, поле которого должно быть изменено -
c- новое значение для поляobj, которое изменяется - Throws:
-
IllegalAccessException- если этот объектFieldприменяет контроль доступа языка Java, а базовое поле недоступно или является final; или если у этого объектаFieldнет доступа для записи. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или подкласса или реализующего интерфейс), или если преобразование разворачивания завершается неудачно. -
NullPointerException- если указанный объект равен null, а поле является полем экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершается неудачно. - See Also:
setShort
public void setShort(Object obj, short s) throws IllegalArgumentException, IllegalAccessException
set(obj, sObj), где sObj — объект Short и sObj.shortValue() == s. - Parameters:
-
obj- объект, поле которого должно быть изменено -
s- новое значение для поляobj, которое изменяется - Throws:
-
IllegalAccessException- если этот объектFieldприменяет контроль доступа языка Java, а базовое поле недоступно или является final; или если у этого объектаFieldнет доступа для записи. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или подкласса или реализующего интерфейс), или если преобразование разворачивания завершается неудачно. -
NullPointerException- если указанный объект равен null, а поле является полем экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершается неудачно. - See Also:
setInt
public void setInt(Object obj, int i) throws IllegalArgumentException, IllegalAccessException
set(obj, iObj), где iObj — объект Integer и iObj.intValue() == i. - Parameters:
-
obj- объект, поле которого должно быть изменено -
i- новое значение для поляobj, которое изменяется - Throws:
-
IllegalAccessException- если этот объектFieldприменяет контроль доступа языка Java, а базовое поле недоступно или является final; или если у этого объектаFieldнет доступа для записи. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или подкласса или реализующего интерфейс), или если преобразование разворачивания завершается неудачно. -
NullPointerException- если указанный объект равен null, а поле является полем экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершается неудачно. - See Also:
setLong
public void setLong(Object obj, long l) throws IllegalArgumentException, IllegalAccessException
set(obj, lObj), где lObj — объект Long и lObj.longValue() == l. - Parameters:
-
obj- объект, поле которого должно быть изменено -
l- новое значение для поляobj, которое изменяется - Throws:
-
IllegalAccessException- если этот объектFieldприменяет контроль доступа языка Java, а базовое поле недоступно или является final; или если у этого объектаFieldнет доступа для записи. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или подкласса или реализующего интерфейс), или если преобразование разворачивания завершается неудачно. -
NullPointerException- если указанный объект равен null, а поле является полем экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершается неудачно. - See Also:
setFloat
public void setFloat(Object obj, float f) throws IllegalArgumentException, IllegalAccessException
set(obj, fObj), где fObj — объект Float и fObj.floatValue() == f. - Parameters:
-
obj- объект, поле которого должно быть изменено -
f- новое значение для поляobj, которое изменяется - Throws:
-
IllegalAccessException- если этот объектFieldприменяет контроль доступа языка Java, а базовое поле недоступно или является final; или если у этого объектаFieldнет доступа для записи. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или подкласса или реализующего интерфейс), или если преобразование разворачивания завершается неудачно. -
NullPointerException- если указанный объект равен null, а поле является полем экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершается неудачно. - See Also:
setDouble
public void setDouble(Object obj, double d) throws IllegalArgumentException, IllegalAccessException
set(obj, dObj), где dObj — объект Double и dObj.doubleValue() == d. - Parameters:
-
obj- объект, поле которого должно быть изменено -
d- новое значение для поляobj, которое изменяется - Throws:
-
IllegalAccessException- если этот объектFieldприменяет контроль доступа языка Java, а базовое поле недоступно или является final; или если у этого объектаFieldнет доступа для записи. -
IllegalArgumentException- если указанный объект не является экземпляром класса или интерфейса, объявляющего базовое поле (или подкласса или реализующего интерфейс), или если преобразование разворачивания завершается неудачно. -
NullPointerException- если указанный объект равен null, а поле является полем экземпляра. -
ExceptionInInitializerError- если инициализация, вызванная этим методом, завершается неудачно. - See Also:
getAnnotation
public <T extends Annotation> T getAnnotation(Class<T> annotationClass)
Обратите внимание, что любая аннотация, возвращаемая этим методом, является аннотацией объявления.
- Specified by:
-
getAnnotationв интерфейсеAnnotatedElement - Overrides:
-
getAnnotationв классеAccessibleObject - Type Parameters:
-
T- тип аннотации, для запроса и возврата, если она присутствует - Parameters:
-
annotationClass- объект Class, соответствующий типу аннотации - Returns:
- аннотация этого элемента для указанного типа аннотации, если она присутствует в этом элементе, иначе null
- Throws:
-
NullPointerException- если переданный класс аннотации равен null - Since:
- 1.5
getAnnotationsByType
public <T extends Annotation> T[] getAnnotationsByType(Class<T> annotationClass)
AnnotatedElement.getAnnotation(Class) заключается в том, что этот метод определяет, является ли его аргумент повторяемым типом аннотации (JLS 9.6), и если да, то пытается найти одну или несколько аннотаций этого типа, "просматривая" контейнерную аннотацию. Вызывающий этот метод может свободно изменять возвращаемый массив; это не повлияет на массивы, возвращаемые другим вызывающим сторонам. Обратите внимание, что любые аннотации, возвращаемые этим методом, являются аннотациями объявления.
- Specified by:
-
getAnnotationsByTypeв интерфейсеAnnotatedElement - Overrides:
-
getAnnotationsByTypeв классеAccessibleObject - Type Parameters:
-
T- тип аннотации, для запроса и возврата, если она присутствует - Parameters:
-
annotationClass- объект Class, соответствующий типу аннотации - Returns:
- все аннотации этого элемента для указанного типа аннотации, если они ассоциированы с этим элементом, иначе массив длиной ноль
- Throws:
-
NullPointerException- если переданный класс аннотации равен null - Since:
- 1.8
getAnnotatedType
public AnnotatedType getAnnotatedType()
- Returns:
- объект, представляющий объявленный тип поля, представленного этим объектом Field
- Since:
- 1.8
© 1993, 2021, 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/17/docs/api/java.base/java/lang/reflect/Field.html