Класс ElementScanner9<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>
-
- javax.lang.model.util.ElementScanner9<R,P>
- Type Parameters:
-
R— тип возвращаемого значения методами этого посетителя. ИспользуйтеVoidдля посетителей, которым не нужны результаты. -
P— тип дополнительного параметра методов этого посетителя. ИспользуйтеVoidдля посетителей, которым не нужен дополнительный параметр.
- All Implemented Interfaces:
ElementVisitor<R,P>
@SupportedSourceVersion(RELEASE_11) public class ElementScanner9<R,P> extends ElementScanner8<R,P>
Посетитель для сканирования элементов программы с поведением по умолчанию, подходящим для версий исходного кода от RELEASE_9 до RELEASE_11. Методы visitXyz в этом классе сканируют свои составные элементы, вызывая scan для их вложенных элементов, параметров и т.д., как указано в спецификациях отдельных методов. Подкласс может контролировать порядок посещения элементов, переопределяя методы visitXyz. Обратите внимание, что клиенты сканера могут получить желаемое поведение, вызвав v.scan(e, p) вместо v.visit(e, p) для корневых объектов, представляющих интерес.
При переопределении подклассом метода visitXyz, новый метод может вызвать сканирование вложенных элементов стандартным способом, вызвав super.visitXyz. Таким образом, конкретный посетитель может контролировать порядок обхода составных элементов относительно дополнительной обработки; например, последовательное вызов super.visitXyz в начале переопределённых методов даст обход в порядке прямой обхода и т.д. Если составные элементы должны быть обработаны в другом порядке, вместо вызова super.visitXyz, переопределённый метод посещения должен вызвать scan с элементами в нужном порядке.
Методы в этом классе могут быть переопределены в соответствии с их общим контрактом. Обратите внимание, что аннотирование методов в конкретных подклассах с помощью @Override поможет обеспечить, что методы будут переопределены должным образом.
ПРЕДУПРЕЖДЕНИЕ: Интерфейс ElementVisitor , реализованный этим классом, может в будущем получить новые методы для поддержки новых, в настоящее время неизвестных, структур языка, добавленных в будущие версии языка программирования Java™. Поэтому в этот класс могут быть добавлены методы, имена которых начинаются с "visit"; чтобы избежать несовместимости, классы, расширяющие этот класс, не должны объявлять какие-либо методы экземпляров с именами, начинающимися с "visit".
При добавлении такого нового метода посещения, реализация по умолчанию в этом классе будет вызывать метод visitUnknown. Также будет представлен новый класс посетителя сканера элементов, соответствующий новому уровню языка; этот посетитель будет иметь другое поведение по умолчанию для метода посещения.
- Since:
- 9
- See Also:
-
ElementScanner6,ElementScanner7,ElementScanner8
Поля
Поля, объявленные в классе javax.lang.model.util.ElementScanner6
DEFAULT_VALUE
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
ElementScanner9() |
Конструктор для конкретных подклассов; использует |
protected |
ElementScanner9(R defaultValue) |
Конструктор для конкретных подклассов; использует переданное значение в качестве значения по умолчанию. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
R |
visitModule(ModuleElement e,
P p) |
Посещает элемент модуля. |
Методы, объявленные в классе javax.lang.model.util.ElementScanner7
visitVariable
Методы, объявленные в классе javax.lang.model.util.ElementScanner6
scan, scan, scan, visitExecutable, visitPackage, visitType, visitTypeParameter
Методы, объявленные в классе javax.lang.model.util.AbstractElementVisitor6
visit, visit, visitUnknown
Методы, объявленные в классе java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Подробное описание конструкторов
ElementScanner9
protected ElementScanner9()
Конструктор для конкретных подклассов; использует null в качестве значения по умолчанию.
ElementScanner9
protected ElementScanner9(R defaultValue)
Конструктор для конкретных подклассов; использует переданное значение в качестве значения по умолчанию.
- Parameters:
-
defaultValue— значение по умолчанию
Подробное описание методов
visitModule
public R visitModule(ModuleElement e,
P p)
Посещает элемент модуля.
- Specified by:
-
visitModuleв интерфейсеElementVisitor<R,P> - Overrides:
-
visitModuleв классеAbstractElementVisitor6<R,P> - Implementation Requirements:
- Эта реализация сканирует вложенные элементы.
- Parameters:
-
e— элемент для посещения -
p— параметр, указанный посетителем - Returns:
- результат сканирования
© 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/java.compiler/javax/lang/model/util/ElementScanner9.html