我查看了LinkedList的Java代码,注意到它使用了一个静态嵌套类Entry。
public class LinkedList<E> ... {
...
private static class Entry<E> { ... }
}
为什么要使用静态嵌套类,而不是普通的内部类?
我能想到的唯一原因是,Entry不能访问实例变量,所以从OOP的角度来看,它有更好的封装。
但我想可能还有其他原因,可能是表现。可能是什么?
请注意。我希望我的术语是正确的,我将它称为静态内部类,但我认为这是错误的:http://java.sun.com/docs/books/tutorial/java/javaOO/nested.html