public class TreePath extends Object implements Serializable
TreePath
представляет массив объектов, которые однозначно определяют путь к узлу в дереве. Элементы массива упорядочиваются с корнем как первый элемент массива. Например, файл на файловой системе однозначно определяется основанный на массиве родительских каталогов и имени файла. Путь /tmp/foo/bar
мог быть представлен a TreePath
как new TreePath(new Object[] {"tmp", "foo", "bar"})
.
TreePath
используется экстенсивно JTree
и связанные классы. Например, JTree
представляет выбор как массив TreePath
s. Когда использующийся с JTree
, элементы пути являются объектами, возвращенными из TreeModel
. Когда JTree
соединяется с DefaultTreeModel
, элементы пути TreeNode
s. Следующий пример иллюстрирует извлечение пользовательского объекта от выбора a JTree
:
DefaultMutableTreeNode root = ...; DefaultTreeModel model = new DefaultTreeModel(root); JTree tree = new JTree(model); ... TreePath selectedPath = tree.getSelectionPath(); DefaultMutableTreeNode selectedNode = ((DefaultMutableTreeNode)selectedPath.getLastPathComponent()). getUserObject();Подклассы обычно должны переопределить только
getLastPathComponent
, и getParentPath
. Как JTree
внутренне создает TreePath
s в различных точках, обычно не полезно разделить на подклассы TreePath
и используйте с JTree
. В то время как TreePath
сериализуемо, a NotSerializableException
бросается, если какие-либо элементы пути не сериализуемы.
Для дополнительной информации и примеров использования древовидных путей, см.
Предупреждение: Сериализированные объекты этого class не будут совместимыми с будущими выпусками Swing. Текущая поддержка сериализации является подходящей для краткосрочного хранения или RMI между приложениями, выполняющими ту же самую версию Swing. С 1.4, поддержка длительного хранения всего JavaBeansTM была добавлена к java.beans
пакет. Пожалуйста, см. XMLEncoder
.
Модификатор | Конструктор и Описание |
---|---|
protected |
TreePath()
Создает пустое
TreePath . |
|
TreePath(Object lastPathComponent)
Создает a
TreePath содержа единственный элемент. |
|
TreePath(Object[] path)
Создает a
TreePath от массива. |
protected |
TreePath(Object[] path, int length)
Создает a
TreePath от массива. |
protected |
TreePath(TreePath parent, Object lastPathComponent)
Создает a
TreePath с указанным родителем и элементом. |
Модификатор и Тип | Метод и Описание |
---|---|
boolean |
equals(Object o)
Сравнивает это
TreePath к указанному объекту. |
Объект |
getLastPathComponent()
Возвращает последний элемент этого пути.
|
TreePath |
getParentPath()
Возвраты
TreePath из родителя. |
Объект[] |
getPath()
Возвращает упорядоченный массив элементов этого
TreePath . |
Объект |
getPathComponent(int index)
Возвращается элемент пути в указанном индексируют.
|
int |
getPathCount()
Возвращает число элементов в пути.
|
int |
hashCode()
Возвращает хэш-код этого
TreePath . |
boolean |
isDescendant(TreePath aTreePath)
Возвращает true если
aTreePath потомок этого TreePath . |
TreePath |
pathByAddingChild(Object child)
Возвращает новый путь, содержащий все элементы этого пути плюс
child . |
Строка |
toString()
Возвращает строку, которая выводит на экран и идентифицирует свойства этого объекта.
|
@ConstructorProperties(value="path") public TreePath(Object[] path)
TreePath
от массива. Массив однозначно определяет путь к узлу.path
- массив объектов, представляющих путь к узлуIllegalArgumentException
- если path
null
, пустой, или содержит a null
значениеpublic TreePath(Object lastPathComponent)
TreePath
содержа единственный элемент. Это используется, чтобы создать a TreePath
идентификация корня.lastPathComponent
- кореньIllegalArgumentException
- если lastPathComponent
null
TreePath(Object[])
protected TreePath(TreePath parent, Object lastPathComponent)
TreePath
с указанным родителем и элементом.parent
- путь к родителю, или null
указать на кореньlastPathComponent
- последний элемент путиIllegalArgumentException
- если lastPathComponent
null
protected TreePath(Object[] path, int length)
TreePath
от массива. Возвращенный TreePath
представляет элементы массива от 0
к length - 1
. Этот конструктор используется внутренне, и обычно не полезный за пределами подклассов.
path
- массив, чтобы создать TreePath
отlength
- идентифицирует число элементов в path
создать TreePath
отNullPointerException
- если path
null
ArrayIndexOutOfBoundsException
- если length - 1
вне диапазона массиваIllegalArgumentException
- если любой из элементов от 0
к length - 1
null
protected TreePath()
TreePath
. Это обеспечивается для подклассов, которые представляют пути другим способом. Подклассы, которые используют этого конструктора, должны переопределить getLastPathComponent
, и getParentPath
.public Object[] getPath()
TreePath
. Первый элемент является корнем.TreePath
public Object getLastPathComponent()
public int getPathCount()
public Object getPathComponent(int index)
index
- индексирование элемента требуютIllegalArgumentException
- если индексирование вне диапазона этого путиpublic boolean equals(Object o)
TreePath
к указанному объекту. Это возвращается true
если o
a TreePath
с теми же самыми элементами (как определено при использовании equals
на каждом элементе пути).equals
в class Object
o
- объект сравнитьсяtrue
если этот объект является тем же самым как obj параметром; false
иначе.Object.hashCode()
, HashMap
public int hashCode()
TreePath
. Хэш-код a TreePath
хэш-код последнего элемента в пути.hashCode
в class Object
Object.equals(java.lang.Object)
, System.identityHashCode(java.lang.Object)
public boolean isDescendant(TreePath aTreePath)
aTreePath
потомок этого TreePath
. A TreePath
P1
потомок a TreePath
P2
если P1
содержит все элементы, которые составляют P2's
путь. Например, если у этого объекта есть путь [a, b]
, и aTreePath
имеет путь [a, b, c]
, тогда aTreePath
потомок этого объекта. Однако, если aTreePath
имеет путь [a]
, тогда это не потомок этого объекта. По этому определению a TreePath
всегда считается потомком себя. Таким образом, aTreePath.isDescendant(aTreePath)
возвраты true
.aTreePath
- TreePath
проверятьaTreePath
потомок этого путиpublic TreePath pathByAddingChild(Object child)
child
. child
последний элемент недавно создаваемый TreePath
.child
- элемент пути, чтобы добавитьNullPointerException
- если child
null
public TreePath getParentPath()
TreePath
из родителя. Возвращаемое значение null
указывает, что это - корневой узел.
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92