default-method- все статьи тега


Почему "final" не допускается в методах интерфейса Java 8?

одной из самых полезных функций Java 8 являются новые default методы в интерфейсах. Есть по существу две причины (могут быть и другие), почему они были введены: предоставление фактических реализаций по умолчанию. Пример: Iterator.remove() С учетом эволюции JDK API. Пример: Iterable.forEach() С точки зрения дизайнера API, я хотел бы иметь возможность использовать другие модификаторы на интерфейсных методах, например final. Это было бы полезно при добавлении удобных методов, предотвращая "слу ...

Java 8 методы по умолчанию как черты: безопасный?

- это безопасная практика, чтобы использовать методы по умолчанию, как бедный человек, черт в Java 8? некоторые утверждают, что это может сделать панды грустно если вы используете их только ради этого, потому что это круто, но это не входило в мои намерения. Также часто напоминается, что методы по умолчанию были введены для поддержки эволюции API и обратной совместимости, что верно, но это не делает его неправильным или искаженным, чтобы использовать их как черты как таковые. I есть следующий ...

Методы Java 8 по умолчанию нарушают совместимость с исходным кодом?

как правило, исходный код Java был совместим с прямой передачей. До Java 8, насколько я знаю, оба скомпилированные классы и источник был вперед совместим с более поздними выпусками JDK/JVM. [Обновление: это неверно, см. комментарии re 'enum' и т. д. Ниже. Однако, с добавлением методов по умолчанию в Java 8 это, кажется, больше не будет. например, библиотека, которую я использую и реализацией java.util.List который включает в себя List<V> sort(). Этот метод возвращает копию содержимого ...