Я дивився на код Java для LinkedList
і зауважив , що він використовував статичний вкладений клас, Entry
.
public class LinkedList<E> ... {
...
private static class Entry<E> { ... }
}
Яка причина використання статичного вкладеного класу, а не звичайного внутрішнього класу?
Єдиною причиною, про яку я міг подумати, було те, що Entry не має доступу до змінних екземплярів, тому з точки зору OOP вона має кращу інкапсуляцію.
Але я думав, що можуть бути й інші причини, можливо, продуктивність. Що це може бути?
Примітка. Я сподіваюся, що я правильно виправдав свої умови, я б назвав це статичним внутрішнім класом, але вважаю, що це неправильно: http://java.sun.com/docs/books/tutorial/java/javaOO/nested.html