Есть ли веская причина, что метод Collections.list() в пакете java.utils возвращает ArrayList<T> вместо List<T>?
Очевидно, что ArrayList - это List, но у меня создается впечатление, что обычно рекомендуется возвращать тип интерфейса вместо типа реализации.