2014-04-14 102 views
-2
public class Tree<T> 
{ 
    private Node<T> root; 

    public Tree(T rootData) 
    { 
     root = new Node<T>(); 
     root.data = rootData; 
     root.children = new ArrayList<Node<T>>(); 
    } 
} 

我发现了一个代码,其中类是这样声明的?这是什么意思?在Java中的类声明和定义

+0

它的哪个部分你难以理解? –

+1

这是关于[generic](http://docs.oracle.com/javase/tutorial/java/generics/types.html)的类型。 – Tiny

+0

我不明白部分 – user3530258

回答

0

该类用于树,这是一种常用的数据结构,用于将事物存储在树形结构中(树的每个部分称为“节点”,然后每个节点可以有一个子节点向左或向右like this

泛型参数T意味着我们可以创建任何类型的树,在树中的所有节点都需要是相同类型的。

我们看到的构造函数允许我们创建一个新的节点(树的顶部),用rootData初始化它,并创建一个子节点列表,它将成为此根节点下的所有节点。

0

这是一个通用的。在实例化Tree时,您可以提供一个类,如Tree<String>,它将以类似的方式用于Node,并作为构造器参数类型。