Интерфейс TypeComponent
- Все суперинтерфейсы:
-
Accessible,Mirror
- Все известные подинтерфейсы:
-
Field,Method
public interface TypeComponent extends Mirror, Accessible
Сущность, объявленная в пользовательском типе (классе или интерфейсе). Данный интерфейс является корнем иерархии компонентов типа, которая включает Field и Method. Компоненты типа с одинаковыми именами, объявленные в разных классах (включая те, которые связаны наследованием), имеют разные объекты TypeComponent. Компоненты типа могут использоваться самостоятельно для получения статической информации об их объявлении или в сочетании с ReferenceType или ObjectReference для доступа к значениям или вызова функций, если это применимо.
- С момента:
- 1.3
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
ReferenceType |
declaringType() |
Возвращает тип, в котором был объявлен этот компонент. |
String |
genericSignature() |
Получает обобщенную сигнатуру для этого TypeComponent, если она существует. |
boolean |
isFinal() |
Определяет, является ли этот TypeComponent final. |
boolean |
isStatic() |
Определяет, является ли этот TypeComponent статическим. |
boolean |
isSynthetic() |
Определяет, является ли этот TypeComponent синтетическим. |
String |
name() |
Получает имя этого компонента типа. |
String |
signature() |
Получает сигнатуру в стиле JNI для этого компонента типа. |
Методы, объявленные в интерфейсе com.sun.jdi.Accessible
isPackagePrivate, isPrivate, isProtected, isPublic, modifiers
Методы, объявленные в интерфейсе com.sun.jdi.Mirror
toString, virtualMachine
Методы
name
String name()
Получает имя этого компонента типа.
Примечание: для полей это имя поля; для методов это имя метода; для конструкторов это <init>; для статических инициализаторов это <clinit>.
- Возвращает:
- строку, содержащую имя.
signature
String signature()
Получает сигнатуру в стиле JNI для этого компонента типа. Сигнатура — это кодированная информация о типе, определенная в документации JNI. Она представляет собой удобный и компактный формат для внутренней работы с информацией о типах, но не обязательно для отображения конечному пользователю. См. Field.typeName() и Method.returnTypeName(), чтобы получить более читаемое представление о типе.
- Возвращает:
- строку, содержащую сигнатуру
- См. также:
- Типовые подписи
genericSignature
String genericSignature()
Получает обобщенную сигнатуру для этого TypeComponent, если она существует. Обобщенные сигнатуры описаны в Спецификации Java™ Virtual Machine.
- Возвращает:
- строку, содержащую обобщенную сигнатуру, или
nullесли обобщенной сигнатуры нет. - С момента:
- 1.5
declaringType
ReferenceType declaringType()
Возвращает тип, в котором был объявлен этот компонент. Возвращаемый ReferenceType отражает либо класс, либо интерфейс в целевой виртуальной машине.
- Возвращает:
ReferenceTypeдля типа, который объявил этот компонент типа.
isStatic
boolean isStatic()
Определяет, является ли этот TypeComponent статическим. Значение возврата не определено для конструкторов и статических инициализаторов.
- Возвращает:
-
trueесли этот компонент типа был объявлен статическим; в противном случае — false.
isFinal
boolean isFinal()
Определяет, является ли этот TypeComponent final. Значение возврата не определено для конструкторов и статических инициализаторов.
- Возвращает:
-
trueесли этот компонент типа был объявлен final; в противном случае — false.
isSynthetic
boolean isSynthetic()
Определяет, является ли этот TypeComponent синтетическим. Синтетические члены генерируются компилятором и отсутствуют в исходном коде содержащего класса.
Не все целевые виртуальные машины поддерживают этот запрос. См. VirtualMachine.canGetSyntheticAttribute(), чтобы определить, поддерживается ли операция.
- Возвращает:
-
trueесли этот компонент типа является синтетическим;falseв противном случае. - Исключения:
-
UnsupportedOperationException— если целевая виртуальная машина не может предоставить информацию о синтетических атрибутах.
© 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/jdk.jdi/com/sun/jdi/TypeComponent.html