## Uses of Interface
com.sun.source.tree.ExpressionTree

- Packages that use ExpressionTree
  Package | Description
  --- | ---
  com.sun.source.tree | Provides interfaces to represent source code as abstract syntax trees (AST).

- - ### Uses of ExpressionTree in com.sun.source.tree

    Subinterfaces of ExpressionTree in com.sun.source.tree
    Modifier and Type | Interface | Description
    --- | --- | ---
    `interface` | `AnnotatedTypeTree` | A tree node for an annotated type.
    `interface` | `AnnotationTree` | A tree node for an annotation.
    `interface` | `ArrayAccessTree` | A tree node for an array access expression.
    `interface` | `AssignmentTree` | A tree node for an assignment expression.
    `interface` | `BinaryTree` | A tree node for a binary expression.
    `interface` | `CompoundAssignmentTree` | A tree node for compound assignment operator.
    `interface` | `ConditionalExpressionTree` | A tree node for the conditional operator ?
    `interface` | `ErroneousTree` | A tree node to stand in for a malformed expression.
    `interface` | `IdentifierTree` | A tree node for an identifier expression.
    `interface` | `InstanceOfTree` | A tree node for an `instanceof` expression.
    `interface` | `LambdaExpressionTree` | A tree node for a lambda expression.
    `interface` | `LiteralTree` | A tree node for a literal expression.
    `interface` | `MemberReferenceTree` | A tree node for a member reference expression.
    `interface` | `MemberSelectTree` | A tree node for a member access expression.
    `interface` | `MethodInvocationTree` | A tree node for a method invocation expression.
    `interface` | `NewArrayTree` | A tree node for an expression to create a new instance of an array.
    `interface` | `NewClassTree` | A tree node to declare a new instance of a class.
    `interface` | `ParenthesizedTree` | A tree node for a parenthesized expression.
    `interface` | `TypeCastTree` | A tree node for a type cast expression.
    `interface` | `UnaryTree` | A tree node for postfix and unary expressions.

    Methods in com.sun.source.tree that return ExpressionTree
    Modifier and Type | Method | Description
    --- | --- | ---
    `ExpressionTree` | AssertTree.`getCondition()` | Returns the condition being asserted.
    `ExpressionTree` | ConditionalExpressionTree.`getCondition()` | Returns the condition.
    `ExpressionTree` | DoWhileLoopTree.`getCondition()` | Returns the condition of the loop.
    `ExpressionTree` | ForLoopTree.`getCondition()` | Returns the condition of the `for` statement.
    `ExpressionTree` | IfTree.`getCondition()` | Returns the condition of the if-statement.
    `ExpressionTree` | WhileLoopTree.`getCondition()` | Returns the condition of the loop.
    `ExpressionTree` | AssertTree.`getDetail()` | Returns the detail expression.
    `ExpressionTree` | NewClassTree.`getEnclosingExpression()` | Returns the enclosing expression, or `null` if none.
    `ExpressionTree` | ArrayAccessTree.`getExpression()` | Returns the expression for the array being accessed.
    `ExpressionTree` | AssignmentTree.`getExpression()` | Returns the expression being assigned to the variable.
    `ExpressionTree` | CaseTree.`getExpression()` | Returns the expression for the case, or `null` if this is the default case.
    `ExpressionTree` | CompoundAssignmentTree.`getExpression()` | Returns the expression on the right hand side of the compound assignment.
    `ExpressionTree` | EnhancedForLoopTree.`getExpression()` | Returns the expression yielding the values for the control variable.
    `ExpressionTree` | ExpressionStatementTree.`getExpression()` | Returns the expression constituting this statement.
    `ExpressionTree` | InstanceOfTree.`getExpression()` | Returns the expression to be tested.
    `ExpressionTree` | MemberSelectTree.`getExpression()` | Returns the expression for which a member is to be selected.
    `ExpressionTree` | ParenthesizedTree.`getExpression()` | Returns the expression within the parentheses.
    `ExpressionTree` | ReturnTree.`getExpression()` | Returns the expression to be returned.
    `ExpressionTree` | SwitchTree.`getExpression()` | Returns the expression for the `switch` statement.
    `ExpressionTree` | SynchronizedTree.`getExpression()` | Returns the expression on which to synchronize.
    `ExpressionTree` | ThrowTree.`getExpression()` | Returns the expression to be thrown.
    `ExpressionTree` | TypeCastTree.`getExpression()` | Returns the expression being cast.
    `ExpressionTree` | UnaryTree.`getExpression()` | Returns the expression that is the operand of the unary operator.
    `ExpressionTree` | ConditionalExpressionTree.`getFalseExpression()` | Returns the expression to be evaluated if the condition is false.
    `ExpressionTree` | NewClassTree.`getIdentifier()` | Returns the name of the class being instantiated.
    `ExpressionTree` | ArrayAccessTree.`getIndex()` | Returns the expression for the index.
    `ExpressionTree` | VariableTree.`getInitializer()` | Returns the initializer for the variable, or `null` if none.
    `ExpressionTree` | BinaryTree.`getLeftOperand()` | Returns the left (first) operand of the expression.
    `ExpressionTree` | MethodInvocationTree.`getMethodSelect()` | Returns the expression identifying the method to be invoked.
    `ExpressionTree` | RequiresTree.`getModuleName()` | Returns the name of the module that is required.
    `ExpressionTree` | ModuleTree.`getName()` | Returns the name of the module.
    `ExpressionTree` | VariableTree.`getNameExpression()` | Returns the qualified identifier for the name being "declared".
    `ExpressionTree` | CompilationUnitTree.`getPackageName()` | Returns the name contained in any package declaration at the head of this compilation unit, or `null` if there is no package declaration.
    `ExpressionTree` | ExportsTree.`getPackageName()` | Returns the name of the package to be exported.
    `ExpressionTree` | OpensTree.`getPackageName()` | Returns the name of the package to be opened.
    `ExpressionTree` | PackageTree.`getPackageName()` | Returns the name of the package being declared.
    `ExpressionTree` | MemberReferenceTree.`getQualifierExpression()` | Returns the qualifier expression for the reference.
    `ExpressionTree` | BinaryTree.`getRightOperand()` | Returns the right (second) operand of the expression.
    `ExpressionTree` | ProvidesTree.`getServiceName()` | Returns the name of the service type being provided.
    `ExpressionTree` | UsesTree.`getServiceName()` | Returns the name of the service type.
    `ExpressionTree` | ConditionalExpressionTree.`getTrueExpression()` | Returns the expression to be evaluated if the condition is true.
    `ExpressionTree` | AnnotatedTypeTree.`getUnderlyingType()` | Returns the underlying type with which the annotations are associated.
    `ExpressionTree` | AssignmentTree.`getVariable()` | Returns the variable being assigned to.
    `ExpressionTree` | CompoundAssignmentTree.`getVariable()` | Returns the variable on the left hand side of the compound assignment.

    Methods in com.sun.source.tree that return types with arguments of type ExpressionTree
    Modifier and Type | Method | Description
    --- | --- | ---
    `List<? extends ExpressionTree>` | AnnotationTree.`getArguments()` | Returns the arguments, if any, for the annotation.
    `List<? extends ExpressionTree>` | MethodInvocationTree.`getArguments()` | Returns the arguments for the method invocation.
    `List<? extends ExpressionTree>` | NewClassTree.`getArguments()` | Returns the arguments for the constructor to be invoked.
    `List<? extends ExpressionTree>` | NewArrayTree.`getDimensions()` | Returns the dimension expressions for the type.
    `List<? extends ExpressionTree>` | ProvidesTree.`getImplementationNames()` | Returns the names of the implementation types being provided.
    `List<? extends ExpressionTree>` | NewArrayTree.`getInitializers()` | Returns the initializer expressions.
    `List<? extends ExpressionTree>` | ExportsTree.`getModuleNames()` | Returns the names of the modules to which the package is exported, or null, if the package is exported to all modules.
    `List<? extends ExpressionTree>` | OpensTree.`getModuleNames()` | Returns the names of the modules to which the package is opened, or null, if the package is opened to all modules.
    `List<? extends ExpressionTree>` | MethodTree.`getThrows()` | Returns the exceptions listed as being thrown by this method.
    `List<? extends ExpressionTree>` | MemberReferenceTree.`getTypeArguments()` | Returns the type arguments for the reference.