LinkedList have static class named as Entry.Why it is static and what would be the benefits ?
本问题已经有最佳答案,请猛点这里访问。
LinkList具有名为Entry的静态类
1 2 3 4 5 6 7 8 9 10 11 | private static class Entry<E> { E element; Entry<E> next; Entry<E> previous; Entry(E paramE, Entry<E> paramEntry1, Entry<E> paramEntry2){ this.element = paramE; this.next = paramEntry1; this.previous = paramEntry2; } } |
一个对象在链接列表中创建
1 | private transient Entry<E> header = new Entry(null, null, null); |
以下是我的问题?
在性能方面,非静态类包含对创建它们的外部类的隐式引用。如果不需要该引用,可以通过使其静态化来保存内存。(参见jls 8.1.3:
在语义方面,对于代码的读者来说,更清楚的是,如果将内部类设置为静态的,则它不包含对外部类的依赖。从这个角度来看,应该始终声明内部类是静态的,直到达到需要依赖于封闭类的程度。
关于你的问题2:我假设你的意思是"如果我们定义一个