Spec-Zone .ru
спецификации, руководства, описания, API
|
R
- тип возврата методов этого посетителя. Использовать Void
для посетителей, которые не должны возвратить результаты.P
- тип дополнительного параметра к методам этого посетителя. Использовать Void
для посетителей, которые не нуждаются в дополнительном параметре.@SupportedSourceVersion(value=RELEASE_6) public class ElementScanner6<R,P> extends AbstractElementVisitor6<R,P>
RELEASE_6
исходная версия. Методы 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
метод. Новый класс посетителя сканера элемента будет также представлен, чтобы соответствовать новому уровню языка; у этого посетителя будет различное поведение по умолчанию для рассматриваемого метода посещения. Когда новый посетитель представляется, все или части этого посетителя могут быть осуждены.
ElementScanner7
Модификатор и Тип | Поле и Описание |
---|---|
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
.public final R scan(Element e)
v.scan(e, null)
.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 и документации разработчика, см.
Авторское право © 1993, 2011, Oracle и/или его филиалы. Все права защищены.