Spec-Zone.ru › OpenJDK 27

Метод класса

java.lang.Object
java.lang.reflect.AccessibleObject
java.lang.reflect.Executable
java.lang.reflect.Method
Все реализуемые интерфейсы:
AnnotatedElement, GenericDeclaration, Member
public final class Method extends Executable
Объект Method предоставляет сведения о единственном методе класса или интерфейса и доступ к нему. Отражённый метод может быть методом класса или методом экземпляра (включая абстрактный метод).

Объект Method допускает расширяющие преобразования при сопоставлении фактических параметров вызова с формальными параметрами базового метода, но выбрасывает IllegalArgumentException, если требуется сужающее преобразование.

Начиная с:
1.1
См. также:
  • Member
  • Class
  • Class.getMethods()
  • Class.getMethod(String, Class[])
  • Class.getDeclaredMethods()
  • Class.getDeclaredMethod(String, Class[])

Краткое описание полей

Поля, объявленные в интерфейсе Member

DECLARED, PUBLIC
Модификатор и тип Поле Описание
static final int DECLARED
Обозначает набор объявленных элементов класса или интерфейса.
static final int PUBLIC
Обозначает набор всех открытых элементов класса или интерфейса, включая унаследованные элементы.

Краткое описание методов

Модификатор и тип Метод Описание
boolean equals(Object obj)
Сравнивает этот объект Method с указанным объектом.
AnnotatedType getAnnotatedReturnType()
Возвращает объект AnnotatedType, представляющий использование типа для задания типа возвращаемого значения метода/конструктора, представленного этим объектом Executable.
<T extends Annotation>
T
getAnnotation(Class<T> annotationClass)
Возвращает аннотацию этого элемента указанного типа, если такая аннотация имеется; в противном случае возвращает null.
Annotation[] getDeclaredAnnotations()
Возвращает аннотации, непосредственно присутствующие в этом элементе.
Class<?> getDeclaringClass()
Возвращает объект Class, представляющий класс или интерфейс, в котором объявлен метод, представленный этим объектом.
Object getDefaultValue()
Возвращает значение по умолчанию для элемента аннотации, представленного этим экземпляром Method.
Class<?>[] getExceptionTypes()
Возвращает массив объектов Class, представляющих типы исключений, объявленных для выбрасывания базовым исполняемым элементом, представленным этим объектом.
Type[] getGenericExceptionTypes()
Возвращает массив объектов Type, представляющих исключения, объявленные для выбрасывания этим исполняемым объектом.
Type[] getGenericParameterTypes()
Возвращает массив объектов Type, представляющих типы формальных параметров исполняемого элемента, представленного этим объектом, в порядке объявления.
Type getGenericReturnType()
Возвращает объект Type, представляющий формальный тип возвращаемого значения метода, представленного этим объектом Method.
int getModifiers()
Возвращает модификаторы языка Java для исполняемого элемента, представленного этим объектом.
String getName()
Возвращает имя метода, представленного этим объектом Method, в виде String.
Annotation[][] getParameterAnnotations()
Возвращает массив массивов объектов Annotation, представляющих аннотации формальных параметров, в порядке объявления, для элемента Executable, представленного этим объектом.
int getParameterCount()
Возвращает количество формальных параметров (явно объявленных, неявно объявленных или не являющихся ни теми, ни другими) исполняемого элемента, представленного этим объектом.
Class<?>[] getParameterTypes()
Возвращает массив объектов Class, представляющих типы формальных параметров исполняемого элемента, представленного этим объектом, в порядке объявления.
Class<?> getReturnType()
Возвращает объект Class, представляющий формальный тип возвращаемого значения метода, представленного этим объектом Method.
TypeVariable<Method>[] getTypeParameters()
Возвращает массив объектов TypeVariable, представляющих переменные типов, объявленные обобщённым объявлением, представленным этим объектом GenericDeclaration, в порядке объявления.
int hashCode()
Возвращает хеш-код этого объекта Method.
Object invoke(Object obj, Object... args)
Вызывает базовый метод, представленный этим объектом Method, для указанного объекта с указанными параметрами.
boolean isBridge()
Возвращает true, если этот метод является мостовым; в противном случае возвращает false.
boolean isDefault()
Возвращает true, если этот метод является методом по умолчанию; в противном случае возвращает false.
boolean isSynthetic()
Возвращает true, если этот исполняемый элемент является синтетической конструкцией; в противном случае возвращает false.
boolean isVarArgs()
Возвращает true, если этот исполняемый элемент объявлен принимающим переменное число аргументов; в противном случае возвращает false.
void setAccessible(boolean flag)
Устанавливает для этого отражённого объекта флаг accessible в указанное логическое значение.
String toGenericString()
Возвращает строку с описанием этого объекта Method, включая параметры типов.
String toString()
Возвращает строку с описанием этого объекта Method.

Методы, объявленные в классе Executable

accessFlags, getAnnotatedExceptionTypes, getAnnotatedParameterTypes, getAnnotatedReceiverType, getAnnotationsByType, getParameters
Модификатор и тип Метод Описание
Set<AccessFlag> accessFlags()
Возвращает неизменяемый набор флагов доступа исполняемого элемента, представленного этим объектом; набор может быть пустым.
AnnotatedType[] getAnnotatedExceptionTypes()
Возвращает массив объектов AnnotatedType, представляющих использование типов для задания объявленных исключений метода/конструктора, представленного этим объектом Executable.
AnnotatedType[] getAnnotatedParameterTypes()
Возвращает массив объектов AnnotatedType, представляющих использование типов для задания типов формальных параметров метода/конструктора, представленного этим объектом Executable.
AnnotatedType getAnnotatedReceiverType()
Возвращает объект AnnotatedType, представляющий использование типа для задания типа получателя метода/конструктора, представленного этим объектом Executable.
<T extends Annotation>
T[]
getAnnotationsByType(Class<T> annotationClass)
Возвращает аннотации, связанные с этим элементом.
Parameter[] getParameters()
Возвращает массив объектов Parameter, представляющих все параметры базового исполняемого элемента, представленного этим объектом.

Методы, объявленные в классе AccessibleObject

canAccess, getAnnotations, getDeclaredAnnotation, getDeclaredAnnotationsByType, isAccessible, isAnnotationPresent, setAccessible, trySetAccessible
Модификатор и тип Метод Описание
final boolean canAccess(Object obj)
Проверяет, может ли вызывающий код получить доступ к этому отражённому объекту.
Annotation[] getAnnotations()
Возвращает аннотации, присутствующие в этом элементе.
<T extends Annotation>
T
getDeclaredAnnotation(Class<T> annotationClass)
Возвращает аннотацию этого элемента указанного типа, если такая аннотация присутствует непосредственно; в противном случае возвращает null.
<T extends Annotation>
T[]
getDeclaredAnnotationsByType(Class<T> annotationClass)
Возвращает аннотацию или аннотации этого элемента указанного типа, если такие аннотации присутствуют непосредственно или косвенно.
boolean isAccessible()
Устарело.
Этот метод устарел, поскольку его название подразумевает проверку доступности отражённого объекта, хотя на самом деле он указывает, отключены ли проверки управления доступом языка Java.
boolean isAnnotationPresent(Class<? extends Annotation> annotationClass)
Возвращает true, если аннотация указанного типа присутствует в этом элементе; в противном случае возвращает false.
static void setAccessible(AccessibleObject[] array, boolean flag)
Вспомогательный метод для установки флага accessible для массива отражённых объектов.
final boolean trySetAccessible()
По возможности устанавливает для этого отражённого объекта флаг accessible в значение true.

Методы, объявленные в классе Object

clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Модификатор и тип Метод Описание
protected Object clone()
Создаёт и возвращает копию этого объекта.
protected void finalize()
Устарело; подлежит удалению: этот элемент API может быть удалён в будущей версии.
Финализация устарела и может быть удалена в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого объекта Object.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
final void wait()
Заставляет текущий поток ожидать пробуждения, обычно в результате уведомления или прерывания.
final void wait(long timeoutMillis)
Заставляет текущий поток ожидать пробуждения, обычно в результате уведомления или прерывания, либо до истечения заданного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Заставляет текущий поток ожидать пробуждения, обычно в результате уведомления или прерывания, либо до истечения заданного промежутка реального времени.

Подробное описание методов

setAccessible

public void setAccessible(boolean flag)
Описание скопировано из класса: AccessibleObject
Устанавливает флаг accessible для этого отражённого объекта в указанное логическое значение. Значение true означает, что отражённый объект должен подавлять проверки контроля доступа языка Java при его использовании. Значение false означает, что отражённый объект должен выполнять проверки контроля доступа языка Java при его использовании с учётом варианта, указанного в описании класса.

Этот метод может использоваться вызывающим кодом в классе C для предоставления доступа к member класса declaring class D, если выполняется любое из следующих условий:

  • C и D находятся в одном модуле.
  • Член является public, а D является public в пакете, который модуль, содержащий D, exports как минимум модулю, содержащему C.
  • Член является protected static, D является public в пакете, который модуль, содержащий D, экспортирует как минимум модулю, содержащему C, и C является подклассом D.
  • D находится в пакете, который модуль, содержащий D, opens как минимум модулю, содержащему C. Все пакеты в безымянных и открытых модулях открыты для всех модулей, поэтому этот метод всегда завершается успешно, если D находится в безымянном или открытом модуле.

Этот метод может использоваться кодом JNI без класса вызывающего кода в стеке для предоставления доступа к member класса declaring class D тогда и только тогда, когда:

  • Член является public, а D является public в пакете, который модуль, содержащий D, exports безусловно.

Этот метод нельзя использовать для предоставления доступа к закрытым членам, членам с доступом по умолчанию (на уровне пакета), защищённым нестатическим членам или защищённым конструкторам, если объявляющий класс находится в модуле, отличном от модуля вызывающего кода, а пакет, содержащий объявляющий класс, не открыт для модуля вызывающего кода.

Переопределяет:
setAccessible в классе AccessibleObject
Параметры:
flag — новое значение флага accessible
Исключения:
InaccessibleObjectException — если предоставить доступ невозможно
Внешние спецификации
  • Спецификация Java Native Interface
См. также:
  • AccessibleObject.trySetAccessible()
  • MethodHandles.privateLookupIn(Class, MethodHandles.Lookup)

getDeclaringClass

public Class<?> getDeclaringClass()
Возвращает объект Class, представляющий класс или интерфейс, объявляющий метод, представленный этим объектом.
Задано в:
getDeclaringClass в интерфейсе Member
Задано в:
getDeclaringClass в классе Executable
Возвращает:
объект, представляющий объявляющий класс базового члена

getName

public String getName()
Возвращает имя метода, представленного этим объектом Method, в виде String.
Задано в:
getName в интерфейсе Member
Задано в:
getName в классе Executable
Возвращает:
простое имя базового члена

getModifiers

public int getModifiers()
Возвращает модификаторы языка Java для исполняемого элемента, представленного этим объектом.
Задано в:
getModifiers в интерфейсе Member
Задано в:
getModifiers в классе Executable
Возвращает:
модификаторы языка Java для исполняемого элемента, представленного этим объектом
См. Спецификацию языка Java:
8.4.3 Модификаторы методов
См. также:
  • Executable.accessFlags()

getTypeParameters

public TypeVariable<Method>[] getTypeParameters()
Возвращает массив объектов TypeVariable, представляющих переменные типа, объявленные обобщённым объявлением, представленным этим объектом GenericDeclaration, в порядке объявления. Если базовое обобщённое объявление не объявляет переменных типа, возвращается массив длины 0.
Задано в:
getTypeParameters в интерфейсе GenericDeclaration
Задано в:
getTypeParameters в классе Executable
Возвращает:
массив объектов TypeVariable, представляющих переменные типа, объявленные этим обобщённым объявлением
Исключения:
GenericSignatureFormatError — если обобщённая сигнатура этого обобщённого объявления не соответствует формату, указанному в Спецификации виртуальной машины Java
См. Спецификацию языка Java:
8.4.4 Обобщённые методы
Начиная с версии:
1.5

getReturnType

public Class<?> getReturnType()
Возвращает объект Class, представляющий формальный тип возвращаемого значения метода, представленного этим объектом Method.
Возвращает:
тип возвращаемого значения метода, представленного этим объектом

getGenericReturnType

public Type getGenericReturnType()
Возвращает объект Type, представляющий формальный тип возвращаемого значения метода, представленного этим объектом Method.

Если тип возвращаемого значения является параметризованным типом, возвращаемый объект Type должен точно отражать фактические аргументы типа, использованные в исходном коде.

Если тип возвращаемого значения является переменной типа или параметризованным типом, он создаётся. В противном случае он разрешается.

Возвращает:
объект Type, представляющий формальный тип возвращаемого значения базового метода
Исключения:
GenericSignatureFormatError — если обобщённая сигнатура метода не соответствует формату, указанному в Спецификации виртуальной машины Java
TypeNotPresentException — если тип возвращаемого значения базового метода ссылается на несуществующее объявление класса или интерфейса
MalformedParameterizedTypeException — если тип возвращаемого значения базового метода ссылается на параметризованный тип, который по какой-либо причине невозможно создать
Начиная с версии:
1.5

getParameterTypes

public Class<?>[] getParameterTypes()
Возвращает массив объектов Class, представляющих формальные типы параметров исполняемого элемента, представленного этим объектом, в порядке объявления. Если базовый исполняемый элемент не принимает параметров, возвращается массив длины 0. Обратите внимание, что конструкторы некоторых внутренних классов могут иметь неявно объявленный параметр в дополнение к явно объявленным параметрам. Также обратите внимание, что компактные конструкторы класса-записи могут иметь неявно объявленные параметры.
Задано в:
getParameterTypes в классе Executable
Возвращает:
типы параметров исполняемого элемента, представленного этим объектом

getParameterCount

public int getParameterCount()
Возвращает количество формальных параметров (независимо от того, объявлены ли они явно, неявно или не объявлены ни одним из этих способов) исполняемого элемента, представленного этим объектом.
Задано в:
getParameterCount в классе Executable
Возвращает:
Количество формальных параметров исполняемого элемента, представленного этим объектом
Начиная с версии:
1.8

getGenericParameterTypes

public Type[] getGenericParameterTypes()
Возвращает массив объектов Type, представляющих формальные типы параметров исполняемого элемента, представленного этим объектом, в порядке объявления. Если базовый исполняемый элемент не принимает параметров, возвращается массив длины 0. Обратите внимание, что конструкторы некоторых внутренних классов могут иметь неявно объявленный параметр в дополнение к явно объявленным. Компактные конструкторы класса-записи также могут иметь неявно объявленные параметры, но они являются особым случаем и поэтому рассматриваются как явно объявленные в исходном коде. Наконец, обратите внимание, что в рамках modeling artifact количество возвращаемых параметров может различаться в зависимости от наличия обобщённой информации. Если обобщённая информация имеется, возвращаются параметры, явно присутствующие в исходном коде, или параметры компактных конструкторов класса-записи. Обратите внимание, что параметры компактных конструкторов класса-записи являются особым случаем: они явно не представлены в исходном коде, но их тип будет возвращён независимо от того, являются ли параметры неявно объявленными. Если обобщённая информация отсутствует, могут также возвращаться неявные и синтетические параметры.

Если формальный тип параметра является параметризованным типом, возвращаемый для него объект Type должен точно отражать фактические аргументы типа, использованные в исходном коде. Это требование также относится к параметрам компактных конструкторов класса-записи, независимо от того, являются ли они неявно объявленными.

Если формальный тип параметра является переменной типа или параметризованным типом, он создаётся. В противном случае он разрешается.

Переопределяет:
getGenericParameterTypes в классе Executable
Возвращает:
массив объектов Type, представляющих формальные типы параметров базового исполняемого элемента в порядке объявления
Исключения:
GenericSignatureFormatError — если обобщённая сигнатура метода не соответствует формату, указанному в Спецификации виртуальной машины Java
TypeNotPresentException — если тип любого параметра базового исполняемого элемента ссылается на несуществующее объявление типа
MalformedParameterizedTypeException — если типы параметров базового исполняемого элемента ссылаются на параметризованный тип, который по какой-либо причине невозможно создать
Начиная с версии:
1.5

getExceptionTypes

public Class<?>[] getExceptionTypes()
Возвращает массив объектов Class, представляющих типы исключений, которые согласно объявлению могут быть выброшены базовым исполняемым элементом, представленным этим объектом. Если в предложении throws исполняемого элемента не объявлено исключений, возвращается массив длины 0.
Задано в:
getExceptionTypes в классе Executable
Возвращает:
типы исключений, объявленных как выбрасываемые исполняемым элементом, представленным этим объектом

getGenericExceptionTypes

public Type[] getGenericExceptionTypes()
Возвращает массив объектов Type, представляющих исключения, объявленные как выбрасываемые этим объектом исполняемого элемента. Если в предложении throws базового исполняемого элемента не объявлено исключений, возвращается массив длины 0.

Если тип исключения является переменной типа или параметризованным типом, он создаётся. В противном случае он разрешается.

Переопределяет:
getGenericExceptionTypes в классе Executable
Возвращает:
массив типов, представляющих типы исключений, выбрасываемых базовым исполняемым элементом
Исключения:
GenericSignatureFormatError — если обобщённая сигнатура метода не соответствует формату, указанному в Спецификации виртуальной машины Java
TypeNotPresentException — если предложение throws базового исполняемого элемента ссылается на несуществующее объявление типа
MalformedParameterizedTypeException — если предложение throws базового исполняемого элемента ссылается на параметризованный тип, который по какой-либо причине невозможно создать
Начиная с версии:
1.5

equals

public boolean equals(Object obj)
Сравнивает этот объект Method с указанным объектом. Возвращает true, если объекты одинаковы. Два объекта Methods одинаковы, если они объявлены одним и тем же классом и имеют одинаковые имена, формальные типы параметров и тип возвращаемого значения.
Переопределяет:
equals в классе Object
Параметры:
obj — объект-ссылка, с которым выполняется сравнение.
Возвращает:
true, если этот объект совпадает с аргументом obj; false в противном случае.
См. также:
  • Object.hashCode()
  • HashMap

hashCode

public int hashCode()
Возвращает хеш-код этого объекта Method. Хеш-код вычисляется как исключающее ИЛИ хеш-кода имени класса, объявляющего базовый метод, и хеш-кода имени метода.
Переопределяет:
hashCode в классе Object
Возвращает:
значение хеш-кода этого объекта
См. также:
  • Object.equals(java.lang.Object)
  • System.identityHashCode(Object)

toString

public String toString()
Возвращает строку с описанием этого объекта Method. Строка формируется следующим образом: модификаторы доступа метода, если они есть, затем тип возвращаемого значения метода, пробел, класс, объявляющий метод, точка, имя метода и заключённый в круглые скобки список формальных типов параметров метода, разделённых запятыми. Если метод выбрасывает проверяемые исключения, после списка параметров добавляются пробел, слово "throws" и список выбрасываемых типов исключений, разделённых запятыми. Например:
   public boolean java.lang.Object.equals(java.lang.Object)

Модификаторы доступа располагаются в каноническом порядке, указанном в «Спецификации языка Java». Сначала указываются public, protected или private, а затем остальные модификаторы в следующем порядке: abstract, default, static, final, synchronized, native, strictfp.

Переопределяет:
toString в классе Object
Возвращает:
строку с описанием этого объекта Method
См. Спецификацию языка Java:
8.4.3 Модификаторы методов
9.4 Объявления методов
9.6.1 Элементы интерфейса аннотации

toGenericString

public String toGenericString()
Возвращает строку с описанием этого объекта Method, включая параметры типа. Строка формируется следующим образом: модификаторы доступа метода, если они есть, затем заключённый в угловые скобки список параметров типа метода, разделённых запятыми, если они есть, включая информативные ограничивающие типы параметров, затем обобщённый тип возвращаемого значения метода, пробел, класс, объявляющий метод, точка, имя метода и заключённый в круглые скобки список обобщённых формальных типов параметров метода, разделённых запятыми. Если метод объявлен с переменным числом аргументов, последний параметр обозначается как "Type...", а не как "Type[]". Для разделения модификаторов доступа между собой, а также от параметров типа или типа возвращаемого значения используется пробел. Если параметров типа нет, список параметров типа опускается; если список параметров типа присутствует, он отделяется пробелом от имени класса. Если метод объявлен с выбрасываемыми исключениями, после списка параметров добавляются пробел, слово "throws" и список обобщённых типов выбрасываемых исключений, разделённых запятыми.

Модификаторы доступа располагаются в каноническом порядке, указанном в «Спецификации языка Java». Сначала указываются public, protected или private, а затем остальные модификаторы в следующем порядке: abstract, default, static, final, synchronized, native, strictfp.

Переопределяет:
toGenericString в классе Executable
Возвращает:
строку с описанием этого объекта Method, включая параметры типа
См. Спецификацию языка Java:
8.4.3 Модификаторы методов
9.4 Объявления методов
9.6.1 Элементы интерфейса аннотации
Начиная с версии:
1.5

invoke

public Object invoke(Object obj, Object... args) throws IllegalAccessException, InvocationTargetException
Вызывает базовый метод, представленный этим объектом Method, для указанного объекта с указанными параметрами. Отдельные параметры автоматически распаковываются в соответствии с формальными параметрами примитивных типов; к параметрам-примитивам и ссылочным параметрам при необходимости применяются преобразования при вызове метода.

Если базовый метод статический, указанный аргумент obj игнорируется. Он может быть равен null.

Если базовый метод требует 0 формальных параметров, переданный массив args может иметь длину 0 или быть равен null.

Если базовый метод является нестатическим, он вызывается с использованием динамического поиска метода, описанного в разделе §15.12.4.4 Спецификации языка Java; в частности, может произойти переопределение с учётом фактического типа целевого объекта во время выполнения.

Если базовый метод статический, класс, объявивший метод, инициализируется, если он ещё не был инициализирован.

Если метод завершается нормально, возвращаемое им значение передаётся вызывающему коду invoke; если значение имеет примитивный тип, оно предварительно соответствующим образом упаковывается в объект. Однако если значение имеет тип массива примитивного типа, элементы массива не упаковываются в объекты; другими словами, возвращается массив примитивного типа. Если тип возвращаемого значения базового метода — void, вызов возвращает null.

Параметры:
obj — объект, для которого вызывается базовый метод
args — аргументы, используемые при вызове метода
Возвращает:
результат вызова метода, представленного этим объектом, для obj с параметрами args
Исключения:
IllegalAccessException — если этот объект Method обеспечивает контроль доступа языка Java и базовый метод недоступен.
IllegalArgumentException — если метод является нестатическим, а указанный объект не является экземпляром класса или интерфейса, объявляющего базовый метод (либо его подклассом или реализацией); если количество фактических и формальных параметров различается; если не удаётся выполнить преобразование распаковки для аргументов-примитивов; или если после возможной распаковки значение параметра нельзя преобразовать в соответствующий тип формального параметра посредством преобразования при вызове метода.
InvocationTargetException — если базовый метод выбрасывает исключение.
NullPointerException — если указанный объект равен null, а метод является нестатическим.
ExceptionInInitializerError — если инициализация, вызванная этим методом, завершается с ошибкой.

isBridge

public boolean isBridge()
Возвращает true, если этот метод является мостовым; в противном случае возвращает false.
Примечание API:
Мостовой метод — это синтетический метод, создаваемый компилятором Java наряду с методом, происходящим из исходного кода. Компиляторы Java используют мостовые методы в различных ситуациях, чтобы устранить различия между семантикой языка программирования Java и семантикой JVM.

Один из примеров использования мостовых методов — способ поддержки компилятором Java ковариантных переопределений, при которых подкласс переопределяет метод и задаёт для нового метода более конкретный тип возвращаемого значения, чем у метода суперкласса. Хотя спецификация языка Java запрещает классу объявлять два метода с одинаковыми типами параметров, но разными типами возвращаемого значения, виртуальная машина этого не запрещает. Распространённый случай использования ковариантных переопределений — класс Cloneable, в котором переопределяется метод clone, унаследованный от java.lang.Object, и объявляется возвращающим тип класса. Например, Object объявляет

protected Object clone() throws CloneNotSupportedException {...}
, а EnumSet<E> объявляет своё ковариантное переопределение на уровне языка
public EnumSet<E> clone() {...}
. При использовании этого способа результирующий файл класса для EnumSet содержал бы два метода clone: один возвращал бы EnumSet<E>, а второй был бы мостовым методом, возвращающим Object. Мостовой метод является переопределением Object.clone() на уровне JVM. Тело мостового метода clone вызывает соответствующий немостовой метод и возвращает его результат.
Возвращает:
true, если этот метод является мостовым; в противном случае возвращает false
См. Спецификацию языка Java:
8.4.8.3 Требования к переопределению и сокрытию
15.12.4.5 Создание кадра, синхронизация, передача управления
См. Спецификацию виртуальной машины Java:
4.6 Методы
Начиная с версии:
1.5
См. также:
  • Моделирование языка программирования Java и JVM в базовом API отражения

isVarArgs

public boolean isVarArgs()
Возвращает true, если этот исполняемый элемент объявлен принимающим переменное число аргументов; в противном случае возвращает false.
Переопределяет:
isVarArgs в классе Executable
Возвращает:
true, если этот исполняемый элемент объявлен принимающим переменное число аргументов; в противном случае возвращает false
См. Спецификацию языка Java:
8.4.1 Формальные параметры
Начиная с версии:
1.5

isSynthetic

public boolean isSynthetic()
Возвращает true, если этот исполняемый элемент является синтетической конструкцией; в противном случае возвращает false.
Задано в:
isSynthetic в интерфейсе Member
Переопределяет:
isSynthetic в классе Executable
Возвращает:
true тогда и только тогда, когда этот исполняемый элемент является синтетической конструкцией, определённой в Спецификации языка Java.
См. Спецификацию языка Java:
13.1 Форма двоичного представления
См. Спецификацию виртуальной машины Java:
4.6 Методы
Начиная с версии:
1.5
См. также:
  • Моделирование языка программирования Java и JVM в базовом API отражения

isDefault

public boolean isDefault()
Возвращает true, если этот метод является методом по умолчанию; в противном случае возвращает false. Метод по умолчанию — это открытый нестатический метод экземпляра, не являющийся абстрактным, то есть нестатический метод с телом, объявленный в интерфейсе.
Возвращает:
true тогда и только тогда, когда этот метод является методом по умолчанию в соответствии с определением Спецификации языка Java.
См. Спецификацию языка Java:
9.4 Объявления методов
Начиная с версии:
1.8

getDefaultValue

public Object getDefaultValue()
Возвращает значение по умолчанию для элемента аннотации, представленного этим экземпляром Method. Если элемент имеет примитивный тип, возвращается экземпляр соответствующего типа-обёртки. Возвращает null, если для элемента не задано значение по умолчанию или если экземпляр метода не представляет объявленный элемент типа аннотации.
Возвращает:
значение по умолчанию для элемента аннотации, представленного этим экземпляром Method.
Вызывает исключение:
TypeNotPresentException — если аннотация имеет тип Class и не удаётся найти определение для значения класса по умолчанию.
См. Спецификацию языка Java:
9.6.2 Значения по умолчанию для элементов интерфейса аннотации
Начиная с версии:
1.5

getAnnotation

public <T extends Annotation> T getAnnotation(Class<T> annotationClass)
Возвращает аннотацию этого элемента для указанного типа, если такая аннотация присутствует, иначе возвращает null.

Обратите внимание, что любая аннотация, возвращаемая этим методом, является аннотацией объявления.

Определено в:
getAnnotation в интерфейсе AnnotatedElement
Переопределено в:
getAnnotation в классе Executable
Параметры типа:
T — тип аннотации, которую нужно запросить и вернуть, если она присутствует
Параметры:
annotationClass — объект Class, соответствующий типу аннотации
Возвращает:
аннотацию этого элемента для указанного типа аннотации, если она присутствует у этого элемента, иначе null
Вызывает исключение:
NullPointerException — если указанный класс аннотации равен null
Начиная с версии:
1.5

getDeclaredAnnotations

public Annotation[] getDeclaredAnnotations()
Возвращает аннотации, непосредственно присутствующие у этого элемента. Этот метод игнорирует унаследованные аннотации. Если у этого элемента нет непосредственно присутствующих аннотаций, возвращается массив длины 0. Вызывающий этот метод может изменять возвращённый массив; это никак не повлияет на массивы, возвращаемые другим вызывающим кодом.

Обратите внимание, что любые аннотации, возвращаемые этим методом, являются аннотациями объявления.

Определено в:
getDeclaredAnnotations в интерфейсе AnnotatedElement
Переопределено в:
getDeclaredAnnotations в классе AccessibleObject
Возвращает:
аннотации, непосредственно присутствующие у этого элемента
Начиная с версии:
1.5

getParameterAnnotations

public Annotation[][] getParameterAnnotations()
Возвращает массив массивов объектов Annotation, представляющих аннотации формальных параметров в порядке объявления для Executable, представленного этим объектом. Синтетические и обязательные параметры (см. пояснение ниже), например внешний параметр "this" конструктора внутреннего класса, будут представлены в возвращаемом массиве. Если у исполняемого элемента нет параметров (то есть нет формальных, синтетических и обязательных параметров), возвращается массив нулевой длины. Если у Executable есть один или несколько параметров, для каждого параметра без аннотаций возвращается вложенный массив нулевой длины. Объекты аннотаций, содержащиеся в возвращаемых массивах, сериализуемы. Вызывающий этот метод может изменять возвращаемые массивы; это никак не повлияет на массивы, возвращаемые другим вызывающим кодом. Компилятор может добавить в список параметров метода дополнительные параметры, неявно объявленные в исходном коде («обязательные»), а также параметры, не объявленные в исходном коде ни явно, ни неявно («синтетические»). Дополнительные сведения см. в Parameter.

Обратите внимание, что любые аннотации, возвращаемые этим методом, являются аннотациями объявления.

Определено в:
getParameterAnnotations в классе Executable
Возвращает:
массив массивов, представляющих аннотации формальных и неявных параметров в порядке объявления для исполняемого элемента, представленного этим объектом
Начиная с версии:
1.5
См. также:
  • Parameter
  • Parameter.getAnnotations()

getAnnotatedReturnType

public AnnotatedType getAnnotatedReturnType()
Возвращает объект AnnotatedType, представляющий использование типа для указания возвращаемого типа метода или конструктора, представленного этим Executable. Если этот объект Executable представляет конструктор, объект AnnotatedType представляет тип создаваемого объекта. Если этот объект Executable представляет метод, объект AnnotatedType представляет использование типа для указания возвращаемого типа метода.
Определено в:
getAnnotatedReturnType в классе Executable
Возвращает:
объект, представляющий возвращаемый тип метода или конструктора, представленного этим Executable
Начиная с версии:
1.8

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторские права © 1993, 2026, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 1993, 2025, 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.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API