Spec-Zone.ru › OpenJDK 27

Класс ElementScanner8<R,P>

java.lang.Object
javax.lang.model.util.AbstractElementVisitor6<R,P>
javax.lang.model.util.ElementScanner6<R,P>
javax.lang.model.util.ElementScanner7<R,P>
javax.lang.model.util.ElementScanner8<R,P>
Параметры типа:
R — тип возвращаемого значения методов этого посетителя. Для посетителей, которым не нужно возвращать результаты, используйте Void.
P — тип дополнительного параметра методов этого посетителя. Для посетителей, которым не нужен дополнительный параметр, используйте Void.
Все реализуемые интерфейсы:
ElementVisitor<R,P>
Прямые известные подклассы:
ElementScanner9
@SupportedSourceVersion(RELEASE_8) public class ElementScanner8<R,P> extends ElementScanner7<R,P>
Посетитель с обходом элементов программы и поведением по умолчанию, подходящим для исходной версии RELEASE_8. Методы visitXyz этого класса обходят составные элементы, вызывая scan для их вложенных элементов, параметров и т. д., как указано в спецификациях отдельных методов. Подкласс может управлять порядком посещения элементов, переопределяя методы visitXyz. Обратите внимание, что клиенты сканера могут добиться желаемого поведения, вызывая v.scan(e, p), а не v.visit(e, p) для интересующих их корневых объектов.

Когда подкласс переопределяет метод visitXyz, новый метод может вызывать обход вложенных элементов стандартным способом, вызывая super.visitXyz. Таким образом, конкретный посетитель может управлять порядком обхода составных элементов относительно дополнительной обработки; например, последовательный вызов super.visitXyz в начале переопределённых методов обеспечит обход в прямом порядке и т. д. Если составные элементы нужно обходить в другом порядке, переопределённый метод посещения должен вместо вызова super.visitXyz вызвать scan, передав ему элементы в желаемом порядке.

Примечание к API:
Методы этого класса можно переопределять с соблюдением их общего контракта.
С момента версии:
1.8
См. также:
  • Примечание о совместимости для подклассов
  • ElementScanner6
  • ElementScanner7
  • ElementScanner9
  • ElementScanner14

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

Поля, объявленные в классе ElementScanner6

DEFAULT_VALUE
Модификатор и тип Поле Описание
protected final R DEFAULT_VALUE
Указанное значение по умолчанию.

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

ElementScanner8()
ElementScanner8(R defaultValue)
Модификатор Конструктор Описание
protected
Конструктор для конкретных подклассов; в качестве значения по умолчанию используется null.
protected
Конструктор для конкретных подклассов; в качестве значения по умолчанию используется аргумент.

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

Методы, объявленные в классе ElementScanner7

visitVariable
Модификатор и тип Метод Описание
R visitVariable(VariableElement e, P p)
Посещает элемент-переменную.

Методы, объявленные в классе ElementScanner6

scan, scan, scan, visitExecutable, visitPackage, visitRecordComponent, visitType, visitTypeParameter
Модификатор и тип Метод Описание
final R scan(Iterable<? extends Element> iterable, P p)
Перебирает заданные элементы и вызывает scan(Element, P) для каждого из них.
final R scan(Element e)
Вспомогательный метод, эквивалентный v.scan(e, null).
R scan(Element e, P p)
Обрабатывает элемент, вызывая e.accept(this, p); этот метод может быть переопределён подклассами.
R visitExecutable(ExecutableElement e, P p)
Посещает исполняемый элемент.
R visitPackage(PackageElement e, P p)
Посещает элемент-пакет.
R visitRecordComponent(RecordComponentElement e, P p)
Посещает элемент-компонент записи.
R visitType(TypeElement e, P p)
Посещает элемент-тип.
R visitTypeParameter(TypeParameterElement e, P p)
Посещает элемент-параметр типа.

Методы, объявленные в классе AbstractElementVisitor6

visit, visit, visitModule, visitUnknown
Модификатор и тип Метод Описание
final R visit(Element e)
Посещает любой элемент программы, передавая его собственному методу accept этого элемента и передавая null в качестве дополнительного параметра.
final R visit(Element e, P p)
Посещает любой элемент программы, передавая его собственному методу accept этого элемента.
R visitModule(ModuleElement e, P p)
Посещает элемент-модуль.
R visitUnknown(Element e, P p)
Посещает элемент неизвестного типа.

Методы, объявленные в классе Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Модификатор и тип Метод Описание
protected Object clone()
Создаёт и возвращает копию этого объекта.
boolean equals(Object obj)
Указывает, равен ли этот объект другому объекту.
protected void finalize()
Устарело, будет удалено: этот элемент API может быть удалён в будущей версии.
Финализация объявлена устаревшей и будет удалена в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
String toString()
Возвращает строковое представление объекта.
final void wait()
Заставляет текущий поток ожидать пробуждения, обычно посредством уведомления или прерывания.
final void wait(long timeoutMillis)
Заставляет текущий поток ожидать пробуждения, обычно посредством уведомления или прерывания, либо до истечения заданного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Заставляет текущий поток ожидать пробуждения, обычно посредством уведомления или прерывания, либо до истечения заданного промежутка реального времени.

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

ElementScanner8

protected ElementScanner8()
Конструктор для конкретных подклассов; в качестве значения по умолчанию используется null.

ElementScanner8

protected ElementScanner8(R defaultValue)
Конструктор для конкретных подклассов; в качестве значения по умолчанию используется аргумент.
Параметры:
defaultValue — значение по умолчанию

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и рабочие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторские права © 1993, 2026, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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.

Spec-Zone.ru

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