Реализовать дерево с помощью дженериков довольно просто, почему бы не попробовать самому? Если вам неудобно работать с дженериками, вы можете попробовать объявить дерево, которое содержит элементы, реализующие интерфейс, а затем просто заставить все ваши различные элементы региона реализовать этот интерфейс.
Вы имеете в виду Tree Widget или древовидную структуру данных? Если вы говорите о виджете Tree, то в Swing есть его реализация.
То, что вы описываете, больше похоже на объектную модель документа (DOM). Обычно, когда люди ссылаются на структуру данных «Дерево», они имеют в виду сбалансированное двоичное дерево (например, красно-черное дерево, которое, безусловно, существует в библиотеке коллекций Java). Но эти виды деревьев предназначены только для быстрой упорядоченной вставки и поиска.
Как бы то ни было, большую часть времени, когда люди используют DOM, они читают или записывают XML, но нет причин, по которым вы не можете использовать DOM для своих собственных произвольных иерархических данных. Даже если вы никогда не сохраните его в XML.
Подойдет ли что-то вроде этого http://www.java-tips.org/java-se-tips/java.lang/red-black-tree-implementation-in-java.html?
Также, как насчет того, чтобы начать с источника java.util.TreeMap из OpenJDK? http://download.java.net/openjdk/jdk7/