Интерфейс TypeCheckInstruction
- Все суперинтерфейсы:
-
ClassFileElement,CodeElement,Instruction
public sealed interface TypeCheckInstruction extends Instruction
instanceof или checkcast в массиве code атрибута Code. Соответствующие операционные коды имеют kind Opcode.Kind.TYPE_CHECK. Передается как CodeElement при обходе элементов CodeModel. Инструкция instanceof проверяет тип и помещает целое число в стек операндов. Инструкция checkcast проверяет тип и выбрасывает ClassCastException, если проверка не пройдена. Инструкции instanceof рассматривают null ссылку как ошибку, а инструкции checkcast рассматривают null ссылку как успех.
Инструкция проверки типа является составной:
TypeCheckInstruction(
Opcode opcode,
ClassEntry type
)
- С тех пор:
- 24
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
static TypeCheckInstruction |
of |
Возвращает инструкцию проверки типа. |
static TypeCheckInstruction |
of |
Возвращает инструкцию проверки типа. |
ClassEntry |
type() |
Возвращает тип, с которым проверяется инструкция. |
Методы, объявленные в интерфейсе java.lang.classfile.Instruction
opcode, sizeInBytes
Подробное описание методов
type
ClassEntry type()
- Возвращает:
- тип, с которым проверяется инструкция
of
static TypeCheckInstruction of(Opcode op, ClassEntry type)
- Параметры:
-
op- операционный код для конкретного типа инструкции проверки типа, который должен быть типаOpcode.Kind.TYPE_CHECK -
type- тип, с которым нужно выполнить проверку или приведение типов - Возвращает:
- инструкция проверки типа
- Исключения:
-
IllegalArgumentException- если тип операционного кода неOpcode.Kind.TYPE_CHECK
of
static TypeCheckInstruction of(Opcode op, ClassDesc type)
- Параметры:
-
op- операционный код для конкретного типа инструкции проверки типа, который должен быть типаOpcode.Kind.TYPE_CHECK -
type- тип, с которым нужно выполнить проверку или приведение типов - Возвращает:
- инструкция проверки типа
- Исключения:
-
IllegalArgumentException- если тип операционного кода неOpcode.Kind.TYPE_CHECK, или еслиtypeявляется примитивным типом
© 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.
https://download.java.net/java/early_access/jdk24/docs/api/java.base/java/lang/classfile/instruction/TypeCheckInstruction.html