可以使用类名在java中声明变量吗?

时间:2017-06-11 10:43:00

标签: java oop variables linked-list inner-classes

可以使用子类的名称在java中声明变量吗?我发现这段关于链表的代码非常令人困惑。请参阅如何声明列表的头部。有人可以解释一下吗?

class LinkedList
{
    Node head;  // head of list

    /* Linked list Node*/
    class Node
    {
        int data;
        Node next;

        // Constructor to create a new node
        // Next is by default initialized
        // as null
        Node(int d)
           {
               data = d;
           }
    }
}

1 个答案:

答案 0 :(得分:1)

是的,对象确实可以包含对与实例成员相同类型的另一个对象的引用。

例如:

class Node {
    int value;
    Node next;
    ...
}

后来,

Node root = new Node(10);
System.out.println(root.next); // should be null
root.next = new Node(5);
System.out.println(root.next.value) // should be 5

是链接列表的主要定义。您有当前节点,该节点必须指向链表中下一个节点的引用。