静态类-HashMap源代码中的Node类?

时间:2018-12-16 19:25:57

标签: java static hashmap static-classes

我正在查看JDK8的HashMap实现的源代码。我注意到Hashmap使用的是Nodes数组。

transient Node<K,V>[] table;

在HashMap类中定义了一个Node类。 节点类被声明为静态类。以下是节点类的代码

 static class Node<K,V> implements Map.Entry<K,V> {
        final int hash;
        final K key;
        V value;
        Node<K,V> next;

        Node(int hash, K key, V value, Node<K,V> next) {
            this.hash = hash;
            this.key = key;
            this.value = value;
            this.next = next;
        }

        /*
        Some other methods
        .
        .
        .
        .
        .
        */


    }

我想知道该类是否具有static关键字,我们如何创建该静态类的对象? 如果我们要为静态类创建对象,那么创建静态类的意义何在。(静态是与实例无关的东西)

如果要创建此类的对象,为什么与内部类(非静态嵌套类)相比,将此类创建为静态嵌套类。

0 个答案:

没有答案