Spec-Zone.ru › OpenJDK 24

Интерфейс ClassTransform

Все суперинтерфейсы:
ClassFileTransform<ClassTransform, ClassElement, ClassBuilder>
Функциональный интерфейс:
Это функциональный интерфейс и поэтому может быть использован в качестве цели присваивания лямбда-выражения или ссылки на метод.
@FunctionalInterface public non-sealed interface ClassTransform extends ClassFileTransform<ClassTransform, ClassElement, ClassBuilder>
Преобразование потоков ClassElement.

Обратитесь к ClassFileTransform для общей информации и рекомендаций по использованию преобразований для структур в формате файла class.

С:
24
См. также:
  • ClassModel
  • ClassFile.transformClass(ClassModel, ClassTransform)

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

Модификатор и тип Поле Описание
static final ClassTransform ACCEPT_ALL
Преобразование класса, которое передает все элементы в билдер.

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

Модификатор и тип Метод Описание
default ClassTransform andThen(ClassTransform t)
Цепочечное преобразование с другим преобразованием; элементы, представленные билдеру этого преобразования, станут входом для следующего преобразования.
static ClassTransform dropping(Predicate<ClassElement> filter)
Создаёт преобразование класса, которое пропускает каждый элемент в билдер, за исключением тех, для которых предоставленный Predicate возвращает true.
static ClassTransform endHandler(Consumer<ClassBuilder> finisher)
Создаёт преобразование класса, которое пропускает каждый элемент в билдер и вызывает указанную функцию по завершении преобразования.
static ClassTransform ofStateful(Supplier<ClassTransform> supplier)
Создаёт состояние преобразования класса из Supplier.
static ClassTransform transformingFields(FieldTransform xform)
Создаёт преобразование класса, которое преобразует элементы FieldModel с помощью предоставленного преобразования поля, пропуская другие элементы в билдер.
static ClassTransform transformingMethodBodies(CodeTransform xform)
Создаёт преобразование класса, которое преобразует CodeAttribute (тело метода) элементов MethodModel с помощью предоставленного преобразования кода, пропуская другие элементы в билдер.
static ClassTransform transformingMethodBodies(Predicate<MethodModel> filter, CodeTransform xform)
Создаёт преобразование класса, которое преобразует CodeAttribute (тело метода) элементов MethodModel с помощью предоставленного преобразования кода для методов, для которых предоставленный Predicate возвращает true, пропуская другие элементы в билдер.
static ClassTransform transformingMethods(MethodTransform xform)
Создаёт преобразование класса, которое преобразует элементы MethodModel с помощью предоставленного преобразования метода, пропуская другие элементы в билдер.
static ClassTransform transformingMethods(Predicate<MethodModel> filter, MethodTransform xform)
Создаёт преобразование класса, которое преобразует элементы MethodModel с помощью предоставленного преобразования метода для методов, для которых предоставленный Predicate возвращает true, пропуская другие элементы в билдер.

Методы, объявленные в интерфейсе java.lang.classfile.ClassFileTransform

accept, atEnd, atStart

Подробное описание полей

ACCEPT_ALL

static final ClassTransform ACCEPT_ALL
Преобразование класса, которое пропускает все элементы к сборщику.

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

ofStateful

static ClassTransform ofStateful(Supplier<ClassTransform> supplier)
Создаёт преобразующий класс со состоянием из Supplier. Поставщик будет вызываться для каждого преобразования.
Параметры:
supplier - Supplier, который генерирует новый объект преобразования для каждого обхода
Возвращает:
преобразующий класс со состоянием

endHandler

static ClassTransform endHandler(Consumer<ClassBuilder> finisher)
Создаёт преобразующий класс, который пропускает каждый элемент к сборщику и вызывает указанную функцию, когда преобразование завершено.
Параметры:
finisher - функция, которая вызывается по завершении преобразования
Возвращает:
преобразующий класс

dropping

static ClassTransform dropping(Predicate<ClassElement> filter)
Создаёт преобразующий класс, который пропускает каждый элемент к сборщику, за исключением тех, для которых предоставленный Predicate возвращает true.
Параметры:
filter - предикат, определяющий, какие элементы следует опустить
Возвращает:
преобразующий класс

transformingMethods

static ClassTransform transformingMethods(Predicate<MethodModel> filter, MethodTransform xform)
Создаёт преобразующий класс, который преобразует элементы MethodModel с помощью предоставленного преобразования метода для методов, для которых предоставленный Predicate возвращает true, пропуская другие элементы к сборщику.
Параметры:
filter - предикат, определяющий, какие методы преобразовать
xform - преобразование метода
Возвращает:
преобразующий класс

transformingMethods

static ClassTransform transformingMethods(MethodTransform xform)
Создаёт преобразующий класс, который преобразует элементы MethodModel с помощью предоставленного преобразования метода, пропуская другие элементы к сборщику.
Параметры:
xform - преобразование метода
Возвращает:
преобразующий класс

transformingMethodBodies

static ClassTransform transformingMethodBodies(Predicate<MethodModel> filter, CodeTransform xform)
Создаёт преобразующий класс, который преобразует CodeAttribute (тело метода) элементов MethodModel с помощью предоставленного преобразования кода для методов, для которых предоставленный Predicate возвращает true, пропуская другие элементы к сборщику.
Параметры:
filter - предикат, определяющий, какие методы преобразовать
xform - преобразование кода
Возвращает:
преобразующий класс

transformingMethodBodies

static ClassTransform transformingMethodBodies(CodeTransform xform)
Создаёт преобразующий класс, который преобразует CodeAttribute (тело метода) элементов MethodModel с помощью предоставленного преобразования кода, пропуская другие элементы к сборщику.
Параметры:
xform - преобразование кода
Возвращает:
преобразующий класс

transformingFields

static ClassTransform transformingFields(FieldTransform xform)
Создаёт преобразующий класс, который преобразует элементы FieldModel с помощью предоставленного преобразования поля, пропуская другие элементы к сборщику.
Параметры:
xform - преобразование поля
Возвращает:
преобразующий класс

andThen

default ClassTransform andThen(ClassTransform t)
Описание скопировано из интерфейса: ClassFileTransform
Цепляет это преобразование с другим; элементы, представленные сборщику этого преобразования, станут входными данными для следующего преобразования.

Этот метод реализован API класса файлов. Пользователи обычно не имеют достаточного доступа к функциональности API класса файлов, чтобы правильно переопределить этот метод для общих преобразований вниз по потоку.

Указано в:
andThen в интерфейсе ClassFileTransform<ClassTransform, ClassElement, ClassBuilder>
Требования к реализации:
В реализации по умолчанию возвращается этот преобразователь класса, соединённый с другим преобразователем класса из аргумента. Цепной преобразование двух преобразований требует включения цепного сборщика, служащего целевым сборщиком для этого преобразования, а также источником элементов для преобразования вниз по потоку.
Параметры:
t - преобразование вниз по потоку
Возвращает:
цепное преобразование

© 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/ClassTransform.html

Spec-Zone.ru

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