Класс Параметр
- java.lang.Object
-
- java.lang.reflect.Parameter
- Все реализованные интерфейсы:
AnnotatedElement
public final class Parameter extends Object implements AnnotatedElement
Информация о параметрах метода. Объект Parameter предоставляет информацию о параметрах метода, включая его имя и модификаторы. Также он предоставляет альтернативный способ получения атрибутов для параметра.
- С момента:
- 1.8
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean | equals(Object obj) | Сравнение на основе исполняемого кода и индекса. |
AnnotatedType | getAnnotatedType() | Возвращает объект AnnotatedType, представляющий использование типа для указания типа формального параметра, представленного этим Parameter. |
<T extends Annotation> | getAnnotation(Class<T> annotationClass) | Возвращает аннотацию данного элемента для указанного типа, если такая аннотация присутствует, в противном случае null. |
<T extends Annotation> | getAnnotationsByType(Class<T> annotationClass) | Возвращает аннотации, связанные с этим элементом. |
<T extends Annotation> | getDeclaredAnnotation(Class<T> annotationClass) | Возвращает аннотацию данного элемента для указанного типа, если такая аннотация непосредственно присутствует, в противном случае null. |
<T extends Annotation> | getDeclaredAnnotationsByType(Class<T> annotationClass) | Возвращает аннотацию(и) данного элемента для указанного типа, если такие аннотации непосредственно или косвенно присутствуют. |
Executable | getDeclaringExecutable() | Возвращает метод, в котором объявлен данный параметр. |
int | getModifiers() | Получает флаги модификаторов для параметра, представленного этим объектом. |
String | getName() | Возвращает имя параметра. |
Type | getParameterizedType() | Возвращает объект, идентифицирующий параметризованный тип для параметра, представленного этим объектом. |
Class<?> | getType() | Возвращает объект, идентифицирующий объявленный тип для параметра, представленного этим объектом. |
int | hashCode() | Возвращает хэш-код, основанный на хэш-коде исполняемого кода и индексе. |
boolean | isImplicit() | Возвращает |
boolean | isNamePresent() | Возвращает true, если параметр имеет имя согласно файлу класса, в противном случае false. |
boolean | isSynthetic() | Возвращает |
boolean | isVarArgs() | Возвращает |
String | toString() | Возвращает строку, описывающую этот параметр. |
Методы, унаследованные от класса java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait Методы, унаследованные от интерфейса java.lang.reflect.AnnotatedElement
getAnnotations, getDeclaredAnnotations, isAnnotationPresent Методы
equals
public boolean equals(Object obj)
Сравнивает по исполняемому файлу и индексу.
- Overrides:
-
equalsв классеObject - Параметры:
-
obj- Объект для сравнения. - Возвращает:
- Является ли данный объект равным переданному.
- См. также:
-
Object.hashCode(),HashMap
hashCode
public int hashCode()
Возвращает хэш-код, основанный на хэш-коде исполняемого файла и индексе.
- Overrides:
-
hashCodeв классеObject - Возвращает:
- Хэш-код, основанный на хэш-коде исполняемого файла.
- См. также:
-
Object.equals(java.lang.Object),System.identityHashCode(java.lang.Object)
isNamePresent
public boolean isNamePresent()
Возвращает true, если параметр имеет имя в соответствии с файлом класса; в противном случае возвращает false. Наличие имени параметра определяется атрибутом MethodParameters метода, объявляющего этот параметр.
- Возвращает:
- true тогда и только тогда, когда параметр имеет имя в соответствии с файлом класса.
toString
public String toString()
Возвращает строку, описывающую этот параметр. Формат — это модификаторы параметра (если есть) в каноническом порядке, как рекомендуется в Спецификации языка Java™, за которыми следует полностью квалифицированный тип параметра (исключая последний [], если параметр является переменной длины), за которым следует "..." если параметр является переменной длины, за которым следует пробел и имя параметра.
- Overrides:
-
toStringв классеObject - Возвращает:
- Строковое представление параметра и связанной информации.
getDeclaringExecutable
public Executable getDeclaringExecutable()
Возвращает Executable , который объявляет этот параметр.
- Возвращает:
Executable, объявляющий этот параметр.
getModifiers
public int getModifiers()
Получить флаги модификаторов для этого параметра, представленного этим объектом Parameter.
- Возвращает:
- Флаги модификаторов для этого параметра.
getName
public String getName()
Возвращает имя параметра. Если имя параметра присутствует, этот метод возвращает имя, предоставленное файлом класса. В противном случае этот метод синтезирует имя вида argN, где N — индекс параметра в описателе метода, объявляющего этот параметр.
- Возвращает:
- Имя параметра, либо предоставленное файлом класса, либо синтезированное, если файл класса не предоставляет имени.
getParameterizedType
public Type getParameterizedType()
Возвращает объект Type, который идентифицирует параметризованный тип для параметра, представленного этим объектом Parameter.
- Возвращает:
- объект
Type, идентифицирующий параметризованный тип параметра, представленный этим объектом
getType
public Class<?> getType()
Возвращает объект Class, который идентифицирует объявленный тип для параметра, представленного этим объектом Parameter.
- Возвращает:
- объект
Class, идентифицирующий объявленный тип параметра, представленного этим объектом
getAnnotatedType
public AnnotatedType getAnnotatedType()
Возвращает объект AnnotatedType, представляющий использование типа для указания типа формального параметра, представленного этим параметром.
- Возвращает:
- объект
AnnotatedType, представляющий использование типа для указания типа формального параметра, представленного этим параметром
isImplicit
public boolean isImplicit()
Возвращает true, если этот параметр неявно объявлен в исходном коде; в противном случае возвращает false.
- Возвращает:
- true, если и только если этот параметр неявно объявлен, как определено в Спецификации языка Java™.
isSynthetic
public boolean isSynthetic()
Возвращает true, если этот параметр ни неявно, ни явно не объявлен в исходном коде; в противном случае возвращает false.
- Возвращает:
- true, если и только если этот параметр является синтетической конструкцией, как определено в Спецификации языка Java™.
isVarArgs
public boolean isVarArgs()
Возвращает true, если этот параметр представляет список переменной длины; в противном случае возвращает false.
- Возвращает:
-
trueесли и только если этот параметр представляет список переменной длины.
getAnnotation
public <T extends Annotation> T getAnnotation(Class<T> annotationClass)
Возвращает аннотацию этого элемента для указанного типа, если такая аннотация присутствует, иначе null.
- Определено в:
-
getAnnotationв интерфейсеAnnotatedElement - Параметры типа:
-
T- тип аннотации для запроса и возврата, если она присутствует - Параметры:
-
annotationClass- объект Class, соответствующий типу аннотации - Возвращает:
- аннотация этого элемента для указанного типа аннотации, если она присутствует на этом элементе, иначе null
- Исключения:
-
NullPointerException- если указанный класс аннотации равен null
getAnnotationsByType
public <T extends Annotation> T[] getAnnotationsByType(Class<T> annotationClass)
Возвращает аннотации, которые ассоциированы с этим элементом. Если аннотаций ассоциированных с этим элементом нет, возвращаемое значение — массив длины 0. Разница между этим методом и AnnotatedElement.getAnnotation(Class) заключается в том, что этот метод определяет, является ли его аргументом повторяемым типом аннотации (JLS 9.6), и в случае положительного результата пытается найти одну или несколько аннотаций этого типа, "просматривая" аннотацию-контейнер. Вызывающий метод свободен изменять возвращаемый массив; это не повлияет на массивы, возвращаемые другим вызовам.
- Определено в:
-
getAnnotationsByTypeв интерфейсеAnnotatedElement - Параметры типа:
-
T- тип аннотации для запроса и возврата, если она присутствует - Параметры:
-
annotationClass- объект Class, соответствующий типу аннотации - Возвращает:
- все аннотации этого элемента для указанного типа аннотации, если они ассоциированы с этим элементом, иначе массив длины ноль
- Исключения:
-
NullPointerException- если указанный класс аннотации равен null
getDeclaredAnnotation
public <T extends Annotation> T getDeclaredAnnotation(Class<T> annotationClass)
Описание скопировано из интерфейса: AnnotatedElement
Возвращает аннотацию этого элемента для указанного типа, если такая аннотация непосредственно присутствует, иначе null. Этот метод игнорирует унаследованные аннотации. (Возвращает null, если на этом элементе нет непосредственных аннотаций.)
- Определено в:
-
getDeclaredAnnotationв интерфейсеAnnotatedElement - Параметры типа:
-
T- тип аннотации для запроса и возврата, если она непосредственно присутствует - Параметры:
-
annotationClass- объект Class, соответствующий типу аннотации - Возвращает:
- аннотация этого элемента для указанного типа аннотации, если она непосредственно присутствует на этом элементе, иначе null
- Исключения:
-
NullPointerException- если указанный класс аннотации равен null
getDeclaredAnnotationsByType
public <T extends Annotation> T[] getDeclaredAnnotationsByType(Class<T> annotationClass)
Описание скопировано из интерфейса: AnnotatedElement
Возвращает аннотацию(и) этого элемента для указанного типа, если такие аннотации непосредственно присутствуют или косвенно присутствуют. Этот метод игнорирует унаследованные аннотации. Если на этом элементе нет ни непосредственных, ни косвенных аннотаций указанного типа, возвращаемое значение — массив длины 0. Разница между этим методом и AnnotatedElement.getDeclaredAnnotation(Class) заключается в том, что этот метод определяет, является ли его аргумент повторяемым типом аннотации (JLS 9.6), и в случае положительного результата пытается найти одну или несколько аннотаций этого типа, "просматривая" аннотацию-контейнер, если она присутствует. Вызывающий метод свободен изменять возвращаемый массив; это не повлияет на массивы, возвращаемые другим вызовам.
- Определено в:
-
getDeclaredAnnotationsByTypeв интерфейсеAnnotatedElement - Параметры типа:
-
T- тип аннотации для запроса и возврата, если она непосредственно или косвенно присутствует - Параметры:
-
annotationClass- объект Class, соответствующий типу аннотации - Возвращает:
- все аннотации этого элемента для указанного типа аннотации, если они непосредственно или косвенно присутствуют на этом элементе, иначе массив длины ноль
- Исключения:
-
NullPointerException- если указанный класс аннотации равен null
© 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/Parameter.html