R - 这个访问者的方法的返回类型。
对不需要返回结果的访问者使用Void 。
P - 访问者方法的附加参数的类型。
对不需要Void的访问者使用Void。
@SupportedSourceVersion(value=RELEASE_6) public abstract class AbstractElementVisitor6<R,P> extends Object implements ElementVisitor<R,P>
RELEASE_6源版本的默认行为的程序元素的骨架访问者。
警告: ElementVisitor实现的ElementVisitor接口可能会在以后添加方法,以适应未来版本的Java编程语言中添加的新的,当前未知的语言结构。 因此,以"visit"开头的"visit"可能会在以后添加到这个类中; 为了避免不兼容,扩展此类的类不应声明任何以"visit"实例方法。
当添加这种新的访问方法时,该类中的默认实现将是调用visitUnknown方法。 还将引入一个新的抽象元素访问者类来对应于新的语言级别; 该访问者对于访问方法将具有不同的默认行为。 当新访客被介绍时,全部或部分访问者可能会被弃用。
请注意,在访问者类中添加新的访问方法的默认实现将发生,而不是直接在访问者界面中添加默认方法 ,因为Java SE 8语言功能不能用于此版本的API,因为此版本需要可以在Java SE 7实现中运行。 仅在Java SE 8及更高版本上运行的API的未来版本可能会在这种情况下利用默认方法。
AbstractElementVisitor7 , AbstractElementVisitor8
| Modifier | Constructor and Description |
|---|---|
protected |
AbstractElementVisitor6()
具体子类调用的构造方法。
|
| Modifier and Type | Method and Description |
|---|---|
R |
visit(Element e)
访问任何程序元素,就像将其自身传递给该元素的
accept方法,并传递
null参数的null。
|
R |
visit(Element e, P p)
访问任何程序元素,就像将其自身传递给该元素的
accept方法一样。
|
R |
visitUnknown(Element e, P p)
访问一种未知的元素。
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitvisitExecutable, visitPackage, visitType, visitTypeParameter, visitVariablepublic final R visit(Element e, P p)
accept方法一样。
调用v.visit(elem)相当于elem.accept(v, p) 。
visit在接口
ElementVisitor<R,P>
e - 要访问的元素
p - 访客指定的参数
public final R visit(Element e)
accept方法一样,并传递null作为附加参数。
调用v.visit(elem)相当于elem.accept(v, null) 。
visit中的
ElementVisitor<R,P>
e - 要访问的元素
public R visitUnknown(Element e, P p)
Element层次结构中,则可能会发生这种情况。
这种方法的默认实现AbstractElementVisitor6总会抛出UnknownElementException 。 这个行为不是一个子类所必需的。
visitUnknown在接口
ElementVisitor<R,P>
e - 要访问的元素
p - 访客指定的参数
UnknownElementException - 访问者实现可以可选地抛出该异常
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.