Module jdk.compiler
Package com.sun.source.tree

# Interface InstanceOfTree

All Superinterfaces:
  `ExpressionTree`, `Tree`

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

       expression instanceof type

See Java Language Specification:
  15.20.2 Type Comparison Operator instanceof
Since:
  1.6

- ## Nested Class Summary

  Nested Classes
  Modifier and Type
  Interface
  Description
  `static enum`
  `InstanceOfTree.TestKindPREVIEW`
  Preview.
  Two possible variants of instanceof expressions: testing types, and performing pattern matching

  ## Nested classes/interfaces declared in interface com.sun.source.tree.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.
  `InstanceOfTree.TestKindPREVIEW`
  `getTestKind()`
  Preview.
  Returns the kind of this instanceof expression.
  `Tree`
  `getType()`
  Returns the type for which to check.

  ### Methods declared in interface com.sun.source.tree.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.
    Returns:
      the type
    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 type variable name

    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

  - ### getTestKind

    InstanceOfTree.TestKindPREVIEW getTestKind()
    `getTestKind` is a reflective preview API of the Java platform.
    Preview features may be removed in a future release, or upgraded to permanent features of the Java platform.
    Returns the kind of this instanceof expression.
    Returns:
      the kind of this instanceof expression
    Since:
      20