Spec-Zone.ru › OpenJDK 24

Интерфейс CompoundElement<E extends ClassFileElement>

Параметры типа:
E - тип элемента-члена
Все суперинтерфейсы:
ClassFileElement, Iterable<E>
Все известные подинтерфейсы:
ClassModel, CodeAttribute, CodeModel, FieldModel, MethodModel
public sealed interface CompoundElement<E extends ClassFileElement> extends ClassFileElement, Iterable<E> permits ClassModel, CodeModel, FieldModel, MethodModel (not exhaustive)
Структура файла, которую можно рассматривать как композицию её элементов-членов. CompoundElement позволяет пользователям проходить по этим элементам-членам с помощью forEach(Consumer) или elementStream(), или буферизовать полученные элементы через iterator() или elementList().

Если не указано иное, все элементы-члены совместимого типа будут представлены во время обхода, если они существуют в этом элементе. Некоторые элементы-члены указывают, что они могут появиться не более одного раза в этом элементе; если такие элементы представлены несколько раз, последнее вхождение является истинным, а все предыдущие вхождения следует игнорировать.

CompoundElement могут быть построены с помощью ClassFileBuilder. ClassFileBuilder.transform(CompoundElement, ClassFileTransform) предоставляет простой способ создания новой структуры путём выборочной обработки исходных структур элементов-членов и направления результатов в билдер.

Диаграмма иерархии класса (sealed):
Sealed class hierarchy graph for CompoundElementSealed class hierarchy graph for CompoundElement
С:
24
См. также:
  • Элементы принадлежности
  • ClassFileBuilder

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

Модификатор и тип Метод Описание
default List<E> elementList()
Возвращает List содержащий все элементы-члены в этом составном элементе.
default Stream<E> elementStream()
Возвращает Stream содержащий все элементы-члены в этом составном элементе.
void forEach(Consumer<? super E> consumer)
Вызывает предоставленный обработчик с каждым элементом-членом в этом составном элементе.
default Iterator<E> iterator()
Возвращает Iterator описывающий все элементы-члены в этом составном элементе.
default String toDebugString()
Возвращает текстовое представление составного элемента и его содержимого для отладки.

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

spliterator

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

forEach

void forEach(Consumer<? super E> consumer)
Вызывает предоставленный обработчик с каждым элементом-членом в этом составном элементе.
Указано в:
forEach в интерфейсе Iterable<E extends ClassFileElement>
Параметры:
consumer - обработчик

iterator

default Iterator<E> iterator()
Возвращает Iterator описывающий все элементы-члены в этом составном элементе.
Указано в:
iterator в интерфейсе Iterable<E extends ClassFileElement>
Возвращает:
a Iterator описывающий все элементы-члены в этом составном элементе

elementStream

default Stream<E> elementStream()
Возвращает Stream содержащий все элементы-члены в этом составном элементе.
Возвращает:
a Stream содержащий все элементы-члены в этом составном элементе

elementList

default List<E> elementList()
Возвращает List содержащий все элементы-члены в этом составном элементе.
Возвращает:
a List содержащий все элементы-члены в этом составном элементе

toDebugString

default String toDebugString()
Возвращает текстовое представление составного элемента и его содержимого для отладки. Формат, структура и точное содержимое возвращаемой строки не специфицированы и могут измениться в будущем.
Возвращает:
текстовое представление составного элемента и его содержимого для отладки

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

Spec-Zone.ru

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