# Interface ExpressionTree

All Superinterfaces:
  `Tree`

All Known Subinterfaces:
  `AnnotatedTypeTree, AnnotationTree, ArrayAccessTree, AssignmentTree, BinaryTree, CompoundAssignmentTree, ConditionalExpressionTree, ErroneousTree, IdentifierTree, InstanceOfTree, LambdaExpressionTree, LiteralTree, MemberReferenceTree, MemberSelectTree, MethodInvocationTree, NewArrayTree, NewClassTree, ParenthesizedTree, SwitchExpressionTree, TypeCastTree, UnaryTree`

public interface ExpressionTree extends Tree
A tree node used as the base class for the different types of expressions.

See Java Language Specification:
  15 Expressions
Since:
  1.6

## Nested Class Summary

### Nested classes/interfaces declared in interface Tree

`Tree.Kind`
Modifier and Type
Interface
Description
`static enum`
`Tree.Kind`
Enumerates all kinds of trees.

## Method Summary

### Methods declared in interface Tree

`accept, getKind`
Modifier and Type
Method
Description
`<R,D> R`
`accept(TreeVisitor<R,D> visitor, D data)`
Accept method used to implement the visitor pattern.
`Tree.Kind`
`getKind()`
Returns the kind of this tree.