Класс DefaultMutableTreeNode
- Все реализованные интерфейсы:
-
Serializable,Cloneable,MutableTreeNode,TreeNode
- Прямые известные подклассы:
JTree.DynamicUtilTreeNode
public class DefaultMutableTreeNode extends Object implements Cloneable, MutableTreeNode, Serializable
Узел дерева может иметь не более одного родителя и 0 или более дочерних узлов. DefaultMutableTreeNode предоставляет операции для просмотра и изменения родителя и дочерних узлов, а также для просмотра дерева, частью которого является узел. Дерево узла — это множество всех узлов, которые можно достичь, начиная с узла и следуя всем возможным ссылкам к родителям и дочерним узлам. Узел без родителя является корнем своего дерева; узел без дочерних узлов является листом. Дерево может состоять из многих поддеревьев, каждый узел выступает в качестве корня для собственного поддерева.
Этот класс предоставляет перечисления для эффективного обхода дерева или поддерева в различных порядках или для следования пути между двумя узлами. Узел также может содержать ссылку на пользовательский объект, использование которого остается на усмотрение пользователя. Запрос у узла его строкового представления с toString() возвращает строковое представление его пользовательского объекта.
Этот класс не потокобезопасен. Если вы планируете использовать DefaultMutableTreeNode (или дерево TreeNodes) в более чем одном потоке, вам необходимо выполнить собственное синхронизацию. Хорошей практикой является синхронизация по корневому узлу дерева.
Хотя DefaultMutableTreeNode реализует интерфейс MutableTreeNode и позволит вам добавить в него любую реализацию MutableTreeNode, не все методы в DefaultMutableTreeNode будут применимы ко всем реализациям MutableTreeNodes. Особенно в отношении некоторых перечислений, использование некоторых из этих методов предполагает, что DefaultMutableTreeNode содержит только экземпляры DefaultMutableNode. Все методы TreeNode/MutableTreeNode будут работать так, как определено, независимо от добавленных реализаций.
Предупреждение: Сериализованные объекты этого класса не будут совместимы с будущими выпусками Swing. Текущая поддержка сериализации подходит для краткосрочного хранения или удаленного вызова метода (RMI) между приложениями, использующими одну и ту же версию Swing. Начиная с версии 1.4, добавлена поддержка длительного хранения всех JavaBeans в пакет java.beans. См. XMLEncoder.
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected boolean |
allowsChildren |
true, если узел может иметь дочерние узлы |
protected Vector |
children |
массив дочерних узлов, может быть null, если у этого узла нет дочерних узлов |
static final Enumeration |
EMPTY_ENUMERATION |
перечисление, которое всегда пустое. |
protected MutableTreeNode |
parent |
родитель этого узла или null, если у этого узла нет родителя |
protected Object |
userObject |
необязательный пользовательский объект |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
DefaultMutableTreeNode() |
Создает узел дерева без родителя и дочерних узлов, но позволяющий иметь дочерние узлы. |
DefaultMutableTreeNode |
Создает узел дерева без родителя, без дочерних узлов, позволяющий иметь дочерние узлы, и инициализирует его указанным пользовательским объектом. |
DefaultMutableTreeNode |
Создает узел дерева без родителя, без дочерних узлов, инициализированный указанным пользовательским объектом и допускающий дочерние узлы только при указании. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
add |
Удаляет newChild из своего родителя и делает его дочерним узлом этого узла, добавив его в конец массива дочерних узлов этого узла. |
Enumeration |
breadthFirstEnumeration() |
Создаёт и возвращает перечисление, которое обходит поддерево, укоренённое в этом узле, в порядке обхода в ширину. |
Enumeration |
children() |
Создаёт и возвращает перечисление в прямом порядке дочерних узлов этого узла. |
Object |
clone() |
Переопределено для того, чтобы сделать клонирование публичным. |
Enumeration |
depthFirstEnumeration() |
Создаёт и возвращает перечисление, которое обходит поддерево, укоренённое в этом узле, в порядке обхода в глубину. |
boolean |
getAllowsChildren() |
Возвращает true, если этому узлу разрешено иметь дочерние узлы. |
TreeNode |
getChildAfter |
Возвращает дочерний узел в массиве дочерних узлов этого узла, который непосредственно следует за aChild, который должен быть дочерним узлом этого узла. |
TreeNode |
getChildAt |
Возвращает дочерний узел по указанному индексу в массиве дочерних узлов этого узла. |
TreeNode |
getChildBefore |
Возвращает дочерний узел в массиве дочерних узлов этого узла, который непосредственно предшествует aChild, который должен быть дочерним узлом этого узла. |
int |
getChildCount() |
Возвращает количество дочерних узлов этого узла. |
int |
getDepth() |
Возвращает глубину дерева, укоренённого в этом узле — наибольшее расстояние от этого узла до листа. |
TreeNode |
getFirstChild() |
Возвращает первый дочерний узел этого узла. |
DefaultMutableTreeNode |
getFirstLeaf() |
Находит и возвращает первый лист, являющийся потомком этого узла — либо этот узел, либо первый лист первого дочернего узла. |
int |
getIndex |
Возвращает индекс указанного дочернего узла в массиве дочерних узлов этого узла. |
TreeNode |
getLastChild() |
Возвращает последний дочерний узел этого узла. |
DefaultMutableTreeNode |
getLastLeaf() |
Находит и возвращает последний лист, являющийся потомком этого узла — либо этот узел, либо последний лист последнего дочернего узла. |
int |
getLeafCount() |
Возвращает общее количество листов, являющихся потомками этого узла. |
int |
getLevel() |
Возвращает количество уровней над этим узлом — расстояние от корня до этого узла. |
DefaultMutableTreeNode |
getNextLeaf() |
Возвращает лист после этого узла или null, если этот узел является последним листом в дереве. |
DefaultMutableTreeNode |
getNextNode() |
Возвращает узел, следующий за этим узлом в обходе дерева этого узла в порядке обхода вперед. |
DefaultMutableTreeNode |
getNextSibling() |
Возвращает следующего брата этого узла в массиве дочерних узлов родителя. |
TreeNode |
getParent() |
Возвращает родителя этого узла или null, если у этого узла нет родителя. |
TreeNode[] |
getPath() |
Возвращает путь от корня, чтобы добраться до этого узла. |
protected TreeNode[] |
getPathToRoot |
Строит родителей узла до и включая корневой узел, где исходный узел является последним элементом в возвращаемом массиве. |
DefaultMutableTreeNode |
getPreviousLeaf() |
Возвращает лист перед этим узлом или null, если этот узел является первым листом в дереве. |
DefaultMutableTreeNode |
getPreviousNode() |
Возвращает узел, предшествующий этому узлу в обходе дерева этого узла в порядке обхода вперед. |
DefaultMutableTreeNode |
getPreviousSibling() |
Возвращает предыдущего брата этого узла в массиве дочерних узлов родителя. |
TreeNode |
getRoot() |
Возвращает корень дерева, содержащего этот узел. |
TreeNode |
getSharedAncestor |
Возвращает ближайшего общего предка этого узла и aNode. |
int |
getSiblingCount() |
Возвращает количество братьев и сестер этого узла. |
Object |
getUserObject() |
Возвращает пользовательский объект этого узла. |
Object[] |
getUserObjectPath() |
Возвращает путь к пользовательскому объекту от корня, чтобы добраться до этого узла. |
void |
insert |
Удаляет newChild из его текущего родителя (если у него есть родитель), устанавливает родителя дочернего узла в этот узел, а затем добавляет дочерний узел в массив дочерних узлов этого узла по индексу childIndex. |
boolean |
isLeaf() |
Возвращает true, если у этого узла нет дочерних узлов. |
boolean |
isNodeAncestor |
Возвращает true, если anotherNode является предком этого узла — если это узел, родитель этого узла или предок родителя этого узла. |
boolean |
isNodeChild |
Возвращает true, если aNode является дочерним узлом этого узла. |
boolean |
isNodeDescendant |
Возвращает true, если anotherNode является потомком этого узла — если это узел, один из дочерних узлов этого узла или потомок одного из дочерних узлов этого узла. |
boolean |
isNodeRelated |
Возвращает true, тогда и только тогда, когда aNode находится в том же дереве, что и этот узел. |
boolean |
isNodeSibling |
Возвращает true, если anotherNode является братом (имеет того же родителя, что и) этого узла. |
boolean |
isRoot() |
Возвращает true, если этот узел является корнем дерева. |
Enumeration |
pathFromAncestorEnumeration |
Создаёт и возвращает перечисление, которое следует по пути от ancestor к этому узлу. |
Enumeration |
postorderEnumeration() |
Создаёт и возвращает перечисление, которое обходит поддерево, укоренённое в этом узле, в порядке обхода после. |
Enumeration |
preorderEnumeration() |
Создаёт и возвращает перечисление, которое обходит поддерево, укоренённое в этом узле, в порядке обхода вперед. |
void |
remove |
Удаляет дочерний узел по указанному индексу из дочерних узлов этого узла и устанавливает родителя этого узла в null. |
void |
remove |
Удаляет aChild из массива дочерних узлов этого узла, присваивая ему родителя null. |
void |
removeAllChildren() |
Удаляет всех дочерних узлов этого узла, установив их родителей в null. |
void |
removeFromParent() |
Удаляет поддерево, укоренённое в этом узле, из дерева, присвоив этому узлу родителя null. |
void |
setAllowsChildren |
Определяет, разрешено ли этому узлу иметь дочерние узлы или нет. |
void |
setParent |
Устанавливает родителя этого узла в newParent но не изменяет массив дочерних узлов родителя. |
void |
setUserObject |
Устанавливает пользовательский объект для этого узла в userObject. |
String |
toString() |
Возвращает результат отправки toString() в пользовательский объект этого узла или пустую строку, если у узла нет пользовательского объекта. |
Подробное описание полей
EMPTY_ENUMERATION
public static final Enumeration<TreeNode> EMPTY_ENUMERATION
parent
protected MutableTreeNode parent
children
protected Vector<TreeNode> children
userObject
protected transient Object userObject
allowsChildren
protected boolean allowsChildren
Подробное описание конструкторов
DefaultMutableTreeNode
public DefaultMutableTreeNode()
DefaultMutableTreeNode
public DefaultMutableTreeNode(Object userObject)
- Параметры:
-
userObject- объект, предоставленный пользователем, являющийся данными узла
DefaultMutableTreeNode
public DefaultMutableTreeNode(Object userObject, boolean allowsChildren)
- Параметры:
-
userObject- объект, предоставленный пользователем, являющийся данными узла -
allowsChildren- если true, узел может иметь дочерние узлы, в противном случае он всегда является узлом-листом
Подробное описание методов
insert
public void insert(MutableTreeNode newChild, int childIndex)
newChild из его текущего родителя (если у него есть родитель), устанавливает родителя дочернего узла в этот узел, а затем добавляет дочерний узел в массив дочерних элементов этого узла по индексу childIndex. newChild не должен быть null и не должен быть предком этого узла.- Определено в:
-
insertв интерфейсеMutableTreeNode - Параметры:
-
newChild- MutableTreeNode для вставки в качестве дочернего элемента этого узла -
childIndex- индекс в массиве дочерних элементов этого узла, где должен быть вставлен этот узел - Исключения:
-
ArrayIndexOutOfBoundsException- еслиchildIndexвыходит за пределы допустимых значений -
IllegalArgumentException- еслиnewChildравен null или является предком этого узла -
IllegalStateException- если этот узел не допускает дочерние элементы - См. также:
remove
public void remove(int childIndex)
MutableTreeNode.- Определено в:
-
removeв интерфейсеMutableTreeNode - Параметры:
-
childIndex- индекс в массиве дочерних элементов этого узла для удаляемого дочернего элемента - Исключения:
-
ArrayIndexOutOfBoundsException- еслиchildIndexвыходит за пределы допустимых значений
setParent
public void setParent(MutableTreeNode newParent)
newParent , но не изменяет массив дочерних элементов родителя. Этот метод вызывается из insert() и remove() для переназначения родителя дочернего элемента, он не должен вызываться из других мест.- Определено в:
-
setParentв интерфейсеMutableTreeNode - Параметры:
-
newParent- новый родитель этого узла
getParent
public TreeNode getParent()
- Определено в:
-
getParentв интерфейсеTreeNode - Возвращает:
- родительский узел TreeNode этого узла или null, если у этого узла нет родителя
getChildAt
public TreeNode getChildAt(int index)
- Определено в:
-
getChildAtв интерфейсеTreeNode - Параметры:
-
index- индекс в массиве дочерних элементов этого узла - Возвращает:
- узел TreeNode в массиве дочерних элементов этого узла по указанному индексу
- Исключения:
-
ArrayIndexOutOfBoundsException- еслиindexвыходит за пределы допустимых значений
getChildCount
public int getChildCount()
- Определено в:
-
getChildCountв интерфейсеTreeNode - Возвращает:
- целое число, обозначающее количество дочерних элементов этого узла
getIndex
public int getIndex(TreeNode aChild)
-1. Этот метод выполняет линейный поиск и имеет сложность O(n), где n — количество дочерних элементов.- Определено в:
-
getIndexв интерфейсеTreeNode - Параметры:
-
aChild- узел TreeNode для поиска среди дочерних элементов этого узла - Возвращает:
- целое число, обозначающее индекс узла в массиве дочерних элементов этого узла, или
-1если указанный узел не является дочерним элементом этого узла - Исключения:
-
IllegalArgumentException- еслиaChildравен null
children
public Enumeration<TreeNode> children()
- Определено в:
-
childrenв интерфейсеTreeNode - Возвращает:
- перечисление дочерних элементов этого узла
setAllowsChildren
public void setAllowsChildren(boolean allows)
allows равно false, все дочерние элементы этого узла удаляются. Примечание: по умолчанию узел допускает дочерние элементы.
- Параметры:
-
allows- true, если этот узел может иметь дочерние элементы
getAllowsChildren
public boolean getAllowsChildren()
- Определено в:
-
getAllowsChildrenв интерфейсеTreeNode - Возвращает:
- true, если этому узлу разрешены дочерние элементы, иначе false
setUserObject
public void setUserObject(Object userObject)
userObject.- Определено в:
-
setUserObjectв интерфейсеMutableTreeNode - Параметры:
-
userObject- объект, являющийся данными, указанными пользователем для этого узла - См. также:
getUserObject
public Object getUserObject()
- Возвращает:
- объект, сохранённый в этом узле пользователем
- См. также:
removeFromParent
public void removeFromParent()
- Определено в:
-
removeFromParentв интерфейсеMutableTreeNode
remove
public void remove(MutableTreeNode aChild)
aChild из массива дочерних элементов этого узла, устанавливая для него родителя null.- Определено в:
-
removeв интерфейсеMutableTreeNode - Параметры:
-
aChild- дочерний элемент этого узла для удаления - Исключения:
-
IllegalArgumentException- еслиaChildравен null или не является дочерним элементом этого узла
removeAllChildren
public void removeAllChildren()
add
public void add(MutableTreeNode newChild)
newChild из его родителя и делает его дочерним элементом этого узла, добавив его в конец массива дочерних элементов этого узла.- Параметры:
-
newChild- узел для добавления в качестве дочернего элемента этого узла - Исключения:
-
IllegalArgumentException- еслиnewChildравен null -
IllegalStateException- если этот узел не допускает дочерние элементы - См. также:
isNodeAncestor
public boolean isNodeAncestor(TreeNode anotherNode)
anotherNode является предком данного узла — если это сам узел, родитель данного узла или предок родителя данного узла. (Узел считается предком самого себя.) Если anotherNode равно null, метод возвращает false. Данная операция в худшем случае имеет сложность O(h), где h — расстояние от корня до данного узла.- Parameters:
-
anotherNode- узел, проверяемый на роль предка данного узла - Returns:
- true, если данный узел является потомком
anotherNode - See Also:
isNodeDescendant
public boolean isNodeDescendant(DefaultMutableTreeNode anotherNode)
anotherNode является потомком данного узла — если это сам узел, один из потомков данного узла или потомок одного из потомков данного узла. Узел считается потомком самого себя. Если anotherNode равно null, возвращается false. Данная операция в худшем случае имеет сложность O(h), где h — расстояние от корня до anotherNode.- Parameters:
-
anotherNode- узел, проверяемый на роль потомка данного узла - Returns:
- true, если данный узел является предком
anotherNode - See Also:
isNodeRelated
public boolean isNodeRelated(DefaultMutableTreeNode aNode)
aNode находится в том же дереве, что и данный узел. Возвращает false, если aNode равно null.- Parameters:
-
aNode- узел, для которого нужно проверить связь - Returns:
- true, если
aNodeнаходится в том же дереве, что и данный узел; false, еслиaNodeравно null - See Also:
getDepth
public int getDepth()
getLevel(), так как требует обхода всего дерева, укоренённого в данном узле.- Returns:
- глубина дерева, корнем которого является данный узел
- See Also:
getLevel
public int getLevel()
- Returns:
- количество уровней над данным узлом
- See Also:
getPath
public TreeNode[] getPath()
- Returns:
- массив объектов TreeNode, представляющий путь, где первый элемент — корень, а последний — данный узел.
getPathToRoot
protected TreeNode[] getPathToRoot(TreeNode aNode, int depth)
- Parameters:
-
aNode- TreeNode, для которого нужно получить путь -
depth- целое число, указывающее количество шагов, уже сделанных к корню (при рекурсивных вызовах), используется для определения размера возвращаемого массива - Returns:
- массив TreeNode, представляющий путь от корня до указанного узла
getUserObjectPath
public Object[] getUserObjectPath()
- Returns:
- путь объектов пользователя от корня до данного узла
getRoot
public TreeNode getRoot()
- Returns:
- корень дерева, содержащего данный узел
- See Also:
isRoot
public boolean isRoot()
- Returns:
- true, если данный узел является корнем своего дерева
getNextNode
public DefaultMutableTreeNode getNextNode()
- Returns:
- узел, следующий за данным узлом в обходе в прямом порядке, или null, если данный узел последний
- See Also:
getPreviousNode
public DefaultMutableTreeNode getPreviousNode()
null если данный узел является первым узлом обхода — корнем дерева. Это неэффективный способ обхода всего дерева; используйте перечисление вместо этого.- Returns:
- узел, предшествующий данному узлу в обходе в прямом порядке, или null, если данный узел первый
- See Also:
preorderEnumeration
public Enumeration<TreeNode> preorderEnumeration()
nextElement(), — это данный узел.Изменение дерева путём вставки, удаления или перемещения узла делает недействительными все созданные перечисления до момента изменения.
- Returns:
- перечисление для обхода дерева в прямом порядке
- See Also:
postorderEnumeration
public Enumeration<TreeNode> postorderEnumeration()
nextElement(), — это самый левый лист. Это то же самое, что обход в глубину.- Returns:
- перечисление для обхода дерева в обратном порядке
- See Also:
breadthFirstEnumeration
public Enumeration<TreeNode> breadthFirstEnumeration()
nextElement(), — это данный узел.Изменение дерева путём вставки, удаления или перемещения узла делает недействительными все созданные перечисления до момента изменения.
- Returns:
- перечисление для обхода дерева в ширину
- See Also:
depthFirstEnumeration
public Enumeration<TreeNode> depthFirstEnumeration()
nextElement(), — это самый левый лист. Это то же самое, что обход в обратном порядке.- Returns:
- перечисление для обхода дерева в глубину
- See Also:
pathFromAncestorEnumeration
public Enumeration<TreeNode> pathFromAncestorEnumeration(TreeNode ancestor)
ancestor к этому узлу. Метод перечисления nextElement() сначала возвращает ancestor, затем потомка ancestor, являющегося предком этого узла, и так далее, и, наконец, возвращает этот узел. Создание перечисления имеет сложность O(m), где m — количество узлов между этим узлом и ancestor, включительно. Каждый вызов метода nextElement() имеет сложность O(1).Изменение дерева путём вставки, удаления или перемещения узла делает недействительными все перечисления, созданные до этого изменения.
- Parameters:
-
ancestor- узел, с которого начинается перечисление - Returns:
- перечисление для следования по пути от предка этого узла к самому узлу
- Throws:
-
IllegalArgumentException- еслиancestorне является предком этого узла - See Also:
isNodeChild
public boolean isNodeChild(TreeNode aNode)
aNode является потомком этого узла. Если aNode равно null, этот метод возвращает false.- Parameters:
-
aNode- узел, для определения является ли он потомком - Returns:
- true, если
aNodeявляется потомком этого узла; false, еслиaNodeравно null
getFirstChild
public TreeNode getFirstChild()
- Returns:
- первый потомок этого узла
- Throws:
-
NoSuchElementException- если у этого узла нет потомков
getLastChild
public TreeNode getLastChild()
- Returns:
- последний потомок этого узла
- Throws:
-
NoSuchElementException- если у этого узла нет потомков
getChildAfter
public TreeNode getChildAfter(TreeNode aChild)
aChild, который должен быть потомком этого узла. Если aChild является последним потомком, возвращает null. Этот метод выполняет линейный поиск потомков этого узла для aChild и имеет сложность O(n), где n — количество потомков; для обхода всего массива потомков используйте перечисление вместо этого метода.- Parameters:
-
aChild- узел-потомок, для поиска следующего потомка после него - Returns:
- потомок этого узла, который сразу следует за
aChild - Throws:
-
IllegalArgumentException- еслиaChildравен null или не является потомком этого узла - See Also:
getChildBefore
public TreeNode getChildBefore(TreeNode aChild)
aChild, который должен быть потомком этого узла. Если aChild является первым потомком, возвращает null. Этот метод выполняет линейный поиск потомков этого узла для aChild и имеет сложность O(n), где n — количество потомков.- Parameters:
-
aChild- узел-потомок, для поиска предыдущего потомка перед ним - Returns:
- потомок этого узла, который сразу предшествует
aChild - Throws:
-
IllegalArgumentException- еслиaChildравен null или не является потомком этого узла
isNodeSibling
public boolean isNodeSibling(TreeNode anotherNode)
anotherNode является братом (имеет того же родителя, что и) этого узла. Узел является своим собственным братом. Если anotherNode равен null, возвращает false.- Parameters:
-
anotherNode- узел, для проверки на роль брата этого узла - Returns:
- true, если
anotherNodeявляется братом этого узла
getSiblingCount
public int getSiblingCount()
1).- Returns:
- количество братьев этого узла
getNextSibling
public DefaultMutableTreeNode getNextSibling()
- Returns:
- брат этого узла, который сразу следует за ним
- See Also:
getPreviousSibling
public DefaultMutableTreeNode getPreviousSibling()
- Returns:
- брат этого узла, который сразу предшествует ему
isLeaf
public boolean isLeaf()
getAllowsChildren
- Specified by:
-
isLeafin interfaceTreeNode - Returns:
- true, если у этого узла нет потомков
- See Also:
getFirstLeaf
public DefaultMutableTreeNode getFirstLeaf()
- Returns:
- первый лист в поддереве, укоренённом в этом узле
- See Also:
getLastLeaf
public DefaultMutableTreeNode getLastLeaf()
- Returns:
- последний лист в поддереве, укоренённом в этом узле
- See Also:
getNextLeaf
public DefaultMutableTreeNode getNextLeaf()
В этой реализации интерфейса MutableNode, эта операция очень неэффективна. Для определения следующего узла этот метод сначала выполняет линейный поиск в списке потомков родителя, чтобы найти текущий узел.
Такая реализация подходит для коротких обходов от известной позиции. Но для обхода всех листьев в дереве следует использовать depthFirstEnumeration для перечисления узлов в дереве и использовать isLeaf для каждого узла, чтобы определить, является ли он листом.
- Returns:
- возвращает следующий лист после этого узла
- See Also:
getPreviousLeaf
public DefaultMutableTreeNode getPreviousLeaf()
В этой реализации интерфейса MutableNode, эта операция очень неэффективна. Для определения предыдущего узла этот метод сначала выполняет линейный поиск в списке потомков родителя, чтобы найти текущий узел.
Такая реализация подходит для коротких обходов от известной позиции. Но для обхода всех листьев в дереве следует использовать depthFirstEnumeration для перечисления узлов в дереве и использовать isLeaf для каждого узла, чтобы определить, является ли он листом.
- Returns:
- возвращает лист, предшествующий этому узлу
- See Also:
getLeafCount
public int getLeafCount()
1. Этот метод имеет сложность O(n), где n — количество потомков этого узла.- Returns:
- количество листьев под этим узлом
- See Also:
toString
public String toString()
toString() для пользовательского объекта этого узла или пустую строку, если у узла нет пользовательского объекта.- Overrides:
-
toStringв классеObject - Returns:
- строковое представление объекта.
- See Also:
clone
public Object clone()
- Overrides:
-
cloneв классеObject - Возвращает:
- копию этого узла
- См. также:
© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/java.desktop/javax/swing/tree/DefaultMutableTreeNode.html