# Interface InstanceOfTree

All Superinterfaces:
  `ExpressionTree, Tree`

public interface InstanceOfTree extends ExpressionTree
A tree node for an `instanceof` expression. For example:

      expression instanceof type

      expression instanceof pattern

See Java Language Specification:
  15.20.2 The instanceof Operator
Since:
  1.6

- ## Nested Class Summary

  ### Nested classes/interfaces declared in interface Tree

  `Tree.Kind`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `ExpressionTree`
  `getExpression()`
  Returns the expression to be tested.
  `PatternTree`
  `getPattern()`
  Returns the tested pattern, or `null` if this `instanceof` does not use a pattern.
  `Tree`
  `getType()`
  Returns the type for which to check, or `null` if this `instanceof` uses a pattern other the `BindingPatternTree`.

  ### Methods declared in interface Tree

  `accept, getKind`

- ## Method Details

  - ### getExpression

    ExpressionTree getExpression()
    Returns the expression to be tested.
    Returns:
      the expression

  - ### getType

    Tree getType()
    Returns the type for which to check, or `null` if this `instanceof` uses a pattern other the `BindingPatternTree`.

    For `instanceof` without a pattern, i.e. in the following form:

          expression instanceof type

    returns the type.

    For `instanceof` with a `BindingPatternTree`, i.e. in the following form:

          expression instanceof type variable_name

    returns the type.

    For instanceof with a pattern, i.e. in the following form:

          expression instanceof pattern

    returns `null`.
    Returns:
      the type or `null` if this `instanceof` uses a pattern other than the BindingPatternTree
    See Also:
      - `getPattern()`

  - ### getPattern

    PatternTree getPattern()
    Returns the tested pattern, or `null` if this `instanceof` does not use a pattern.

    For instanceof with a pattern, i.e. in the following form:

          expression instanceof pattern

    returns the pattern.

    For `instanceof` without a pattern, i.e. in the following form:

          expression instanceof type

    returns `null`.
    Returns:
      the tested pattern, or `null` if this `instanceof` does not use a pattern
    Since:
      16