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

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

## Uses of StatementTree in com.sun.source.tree

Subinterfaces of StatementTree in com.sun.source.tree
Modifier and Type | Interface | Description
--- | --- | ---
`interface` | `AssertTree` | A tree node for an `assert` statement.
`interface` | `BlockTree` | A tree node for a statement block.
`interface` | `BreakTree` | A tree node for a `break` statement.
`interface` | `ClassTree` | A tree node for a class, interface, enum, or annotation type declaration.
`interface` | `ContinueTree` | A tree node for a `continue` statement.
`interface` | `DoWhileLoopTree` | A tree node for a `do` statement.
`interface` | `EmptyStatementTree` | A tree node for an empty (skip) statement.
`interface` | `EnhancedForLoopTree` | A tree node for an "enhanced" `for` loop statement.
`interface` | `ExpressionStatementTree` | A tree node for an expression statement.
`interface` | `ForLoopTree` | A tree node for a basic `for` loop statement.
`interface` | `IfTree` | A tree node for an `if` statement.
`interface` | `LabeledStatementTree` | A tree node for a labeled statement.
`interface` | `ReturnTree` | A tree node for a `return` statement.
`interface` | `SwitchTree` | A tree node for a `switch` statement.
`interface` | `SynchronizedTree` | A tree node for a `synchronized` statement.
`interface` | `ThrowTree` | A tree node for a `throw` statement.
`interface` | `TryTree` | A tree node for a `try` statement.
`interface` | `VariableTree` | A tree node for a variable declaration.
`interface` | `WhileLoopTree` | A tree node for a `while` loop statement.
`interface` | `YieldTree` | Deprecated, for removal: This API element is subject to removal in a future version. This class is modeling yield from switch expressions, which are part of a preview feature and may be removed if the preview feature is removed.

Methods in com.sun.source.tree that return StatementTree
Modifier and Type | Method | Description
--- | --- | ---
`StatementTree` | IfTree.`getElseStatement()` | Returns the statement to be executed if the condition is false, or `null` if there is no such statement.
`StatementTree` | DoWhileLoopTree.`getStatement()` | Returns the body of the loop.
`StatementTree` | EnhancedForLoopTree.`getStatement()` | Returns the body of the loop.
`StatementTree` | ForLoopTree.`getStatement()` | Returns the body of the `for` statement.
`StatementTree` | LabeledStatementTree.`getStatement()` | Returns the statement that is labeled.
`StatementTree` | WhileLoopTree.`getStatement()` | Returns the body of the loop.
`StatementTree` | IfTree.`getThenStatement()` | Returns the statement to be executed if the condition is true

Methods in com.sun.source.tree that return types with arguments of type StatementTree
Modifier and Type | Method | Description
--- | --- | ---
`List<? extends StatementTree>` | ForLoopTree.`getInitializer()` | Returns any initializers of the `for` statement.
`List<? extends StatementTree>` | BlockTree.`getStatements()` | Returns the statements comprising this block.
`List<? extends StatementTree>` | CaseTree.`getStatements()` | For case with kind CaseTree.CaseKind.STATEMENT, returns the statements labeled by the case.