NewClassTree (Java SE 26 & JDK 26)
Description: declaration: module: jdk.compiler, package: com.sun.source.tree, interface: NewClassTree
Keywords: com.sun.source.tree.NewClassTree interface

# Interface NewClassTree

All Superinterfaces:
  `ExpressionTree, Tree`

public interface NewClassTree extends ExpressionTree
A tree node to declare a new instance of a class. For example:

      new identifier ( )

      new identifier ( arguments )

      new typeArguments identifier ( arguments )
          classBody

      enclosingExpression.new identifier ( arguments )

See Java Language Specification:
  15.9 Class Instance Creation 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

  Modifier and Type
  Method
  Description
  `List<? extends ExpressionTree>`
  `getArguments()`
  Returns the arguments for the constructor to be invoked.
  `ClassTree`
  `getClassBody()`
  Returns the class body if an anonymous class is being instantiated, and `null` otherwise.
  `ExpressionTree`
  `getEnclosingExpression()`
  Returns the enclosing expression, or `null` if none.
  `ExpressionTree`
  `getIdentifier()`
  Returns the name of the class being instantiated.
  `List<? extends Tree>`
  `getTypeArguments()`
  Returns the type arguments for the object being created.

  ### 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.

- ## Method Details

  - ### getEnclosingExpression

    ExpressionTree getEnclosingExpression()
    Returns the enclosing expression, or `null` if none.
    Returns:
      the enclosing expression

  - ### getTypeArguments

    List<? extends Tree> getTypeArguments()
    Returns the type arguments for the object being created.
    Returns:
      the type arguments

  - ### getIdentifier

    ExpressionTree getIdentifier()
    Returns the name of the class being instantiated.
    Returns:
      the name

  - ### getArguments

    List<? extends ExpressionTree> getArguments()
    Returns the arguments for the constructor to be invoked.
    Returns:
      the arguments

  - ### getClassBody

    ClassTree getClassBody()
    Returns the class body if an anonymous class is being instantiated, and `null` otherwise.
    Returns:
      the class body