java - 为什么linkedlist.java不导出Node类

标签 java linked-list

Linkedlist.java 有一个从未导出的 Node 类,而是使用 Iterator 来允许客户端循环访问详细信息。为什么 Node 类不是 public 的?如果有某种理由选择这种方式,你的想法是什么?

http://www.docjar.com/html/api/java/util/LinkedList.java.html

最佳答案

Node 类不是官方 Java API 的一部分。它是一个实现细节,因此通过将其设置为私有(private)来隐藏它。如果通过公开它来公开它,可能会让人们认为它可以安全使用,这会产生误导,因为并非所有 Java 实现都会使用它。例如,LinkedList 的 OpenJDK6 实现没有 Node 类。相反,它有一个 Entry类。

关于java - 为什么linkedlist.java不导出Node类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18580101/

相关文章:

java - 显示/隐藏丰富的列 :extendedDataTable (RichFaces 4. x)

java - 事件为 "repeated?"是什么意思

c++ - 如果其中一个为真,则 && 循环结束,而不是如果两个都为真

c - 在c中反转链表时出现段错误问题

java - 您如何测试 Iterator/ListIterator 是否有效?

java - 在字符串链表的链表中查找重复项的最有效方法 - java

java - 如何处理出现在表达式或变量名称中的特定于语言的保留字

java - 反向打印循环单链表

java - 用于 Java/GWT 的 NoSQL DB(有向图)?

c - 为什么我会收到 "corrupted double-linked list"错误?