Я смотрел код Java для LinkedList
и заметил, что он использовал статический вложенный класс Entry
.
public class LinkedList<E> ... {
...
private static class Entry<E> { ... }
}
В чем причина использования статического вложенного класса, а не обычного внутреннего класса?
Единственная причина, по которой я мог думать, заключалась в том, что Entry не имеет доступа к переменным экземпляра, поэтому с точки зрения ООП она имеет лучшую инкапсуляцию.
Но я думал, что могут быть другие причины, возможно, производительность. Что это может быть?
Примечание. Я надеюсь, что мои термины верны, я бы назвал это статическим внутренним классом, но я думаю, что это неправильно: http://java.sun.com/docs/books/tutorial/java/javaOO/nested.html p >