Spec-Zone .ru
спецификации, руководства, описания, API
|
R
- тип возврата методов этого посетителя. Использовать Void
для посетителей, которые не должны возвратить результаты.P
- тип дополнительного параметра к методам этого посетителя. Использовать Void
для посетителей, которые не нуждаются в дополнительном параметре.@SupportedSourceVersion(value=RELEASE_6) public class ElementScanner6<R,P> extends AbstractElementVisitor6<R,P>
RELEASE_6
исходная версия. Методы visitXYZ в этом class сканируют свои компонентные элементы, вызывая scan
на их включенных элементах, параметрах, и т.д., как обозначено в отдельных спецификациях метода. Подкласс может управлять элементами порядка, посещаются, переопределяя методы visitXYZ. Отметьте, что клиенты сканера могут получить требуемое поведение вызвать v.scan(e, p)
вместо v.visit(e, p)
на корневых предметах интереса. Когда подкласс переопределяет метод visitXYZ, новый метод может заставить включенные элементы быть отсканированными в значении по умолчанию путь, вызывая super.visitXYZ. Этим способом конкретный посетитель может управлять упорядочиванием обхода по компонентным элементам относительно дополнительной обработки; например, последовательно вызывающий super.visitXYZ в начале переопределенных методов приведет к обходу перед порядком и т.д. Если компонентные элементы должны быть пересечены в некотором другом порядке, вместо того, чтобы вызвать super.visitXYZ, метод посещения переопределения должен вызвать scan
с элементами в требуемом порядке.
Методы в этом class могут быть переопределены подвергающиеся их общему контракту. Отметьте что, аннотируя методы в конкретных подклассах с @Override
поможет гарантировать, что методы переопределяются как предназначено.
ПРЕДУПРЕЖДЕНИЕ: ElementVisitor
интерфейсу, реализованному этим class, можно было добавить методы к этому в будущем, чтобы разместить новый, в настоящий момент неизвестный, структуры языка, добавленные к будущим версиям языка программирования Java™. Поэтому, методы, имена которых начинаются "visit"
может быть добавлен к этому class в будущем; чтобы избежать несовместимостей, классы, которые расширяют этот class, не должны объявить методы экземпляра с начинающимися именами "visit"
.
Когда такой новый метод посещения добавляется, реализация по умолчанию в этом class должна будет вызвать visitUnknown
метод. Новый посетитель сканера элемента class будет также представлен, чтобы соответствовать новому уровню языка; у этого посетителя будет различное поведение значения по умолчанию для рассматриваемого метода посещения. Когда новый посетитель представляется, все или части этого посетителя могут быть осуждены.
ElementScanner7
, ElementScanner8
Модификатор и Тип | Поле и Описание |
---|---|
protected R |
DEFAULT_VALUE
Указанное значение по умолчанию.
|
Модификатор | Конструктор и Описание |
---|---|
protected |
ElementScanner6()
Конструктор для конкретных подклассов; использование
null для значения по умолчанию. |
protected |
ElementScanner6(R defaultValue)
Конструктор для конкретных подклассов; использует параметр за значение по умолчанию.
|
Модификатор и Тип | Метод и Описание |
---|---|
R |
scan(Element e)
Метод удобства, эквивалентный
v.scan(e, null) . |
R |
scan(Element e, P p)
Обрабатывает элемент, вызывая
e.accept(this, p) ; этот метод может быть переопределен подклассами. |
R |
scan(Iterable<? extends Element> iterable, P p)
Выполняет итерации по данным элементам и вызовам
scan(Element, P) на каждом. |
R |
visitExecutable(ExecutableElement e, P p)
Посещает исполнимый элемент.
|
R |
visitPackage(PackageElement e, P p)
Посещает элемент пакета.
|
R |
visitType(TypeElement e, P p)
Посещает элемент типа.
|
R |
visitTypeParameter(TypeParameterElement e, P p)
Посещает элемент параметра типа.
|
R |
visitVariable(VariableElement e, P p)
Посещает переменный элемент.
|
visit, visit, visitUnknown
protected final R DEFAULT_VALUE
protected ElementScanner6()
null
для значения по умолчанию.protected ElementScanner6(R defaultValue)
public final R scan(Iterable<? extends Element> iterable, P p)
scan(Element, P)
на каждом. Возвращает результат последней возможности к scan
или DEFAULT_VALUE
для пустого повторяемого.iterable
- элементы, чтобы отсканироватьp
- дополнительный параметрDEFAULT_VALUE
если никакие элементыpublic R scan(Element e, P p)
e.accept(this, p)
; этот метод может быть переопределен подклассами.e
- элемент, чтобы отсканироватьp
- определенный сканером параметрe
.public final R scan(Element e)
v.scan(e, null)
.e
- элемент, чтобы отсканироватьe
.public R visitPackage(PackageElement e, P p)
e
- элемент, чтобы посетитьp
- определенный посетителем параметрpublic R visitType(TypeElement e, P p)
e
- элемент, чтобы посетитьp
- определенный посетителем параметрpublic R visitVariable(VariableElement e, P p)
RESOURCE_VARIABLE
когда visitUnknown
вызывается.e
- элемент, чтобы посетитьp
- определенный посетителем параметрpublic R visitExecutable(ExecutableElement e, P p)
e
- элемент, чтобы посетитьp
- определенный посетителем параметрpublic R visitTypeParameter(TypeParameterElement e, P p)
e
- элемент, чтобы посетитьp
- определенный посетителем параметр
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92