javax.swing.tree

## Interface TreeNode

- All Known Subinterfaces:
    MutableTreeNode
  All Known Implementing Classes:
    AbstractDocument.AbstractElement, AbstractDocument.BranchElement, AbstractDocument.LeafElement, DefaultMutableTreeNode, DefaultStyledDocument.SectionElement, HTMLDocument.BlockElement, HTMLDocument.RunElement, JTree.DynamicUtilTreeNode

      public interface TreeNode

  Defines the requirements for an object that can be used as a tree node in a JTree.

  Implementations of `TreeNode` that override `equals` will typically need to override `hashCode` as well. Refer to `TreeModel` for more information. For further information and examples of using tree nodes, see How to Use Tree Nodes in The Java Tutorial.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `Enumeration` | `children()` | Returns the children of the receiver as an `Enumeration`.
    `boolean` | `getAllowsChildren()` | Returns true if the receiver allows children.
    `TreeNode` | `getChildAt(int childIndex)` | Returns the child `TreeNode` at index `childIndex`.
    `int` | `getChildCount()` | Returns the number of children `TreeNode`s the receiver contains.
    `int` | `getIndex(TreeNode node)` | Returns the index of `node` in the receivers children.
    `TreeNode` | `getParent()` | Returns the parent `TreeNode` of the receiver.
    `boolean` | `isLeaf()` | Returns true if the receiver is a leaf.

- - ### Method Detail

    - #### getChildAt

          TreeNode getChildAt(int childIndex)

      Returns the child `TreeNode` at index `childIndex`.

    - #### getChildCount

          int getChildCount()

      Returns the number of children `TreeNode`s the receiver contains.

    - #### getParent

          TreeNode getParent()

      Returns the parent `TreeNode` of the receiver.

    - #### getIndex

          int getIndex(TreeNode node)

      Returns the index of `node` in the receivers children. If the receiver does not contain `node`, -1 will be returned.

    - #### getAllowsChildren

          boolean getAllowsChildren()

      Returns true if the receiver allows children.

    - #### isLeaf

          boolean isLeaf()

      Returns true if the receiver is a leaf.

    - #### children

          Enumeration children()

      Returns the children of the receiver as an `Enumeration`.

Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2026, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.