Я хочу знать, когда мы можем использовать интерфейс, расширяющий другой интерфейс. Я хочу знать практический пример и когда мы его используем.Когда мы используем интерфейс extends interface
ответ
Посмотрите на интерфейсы, такие как java.util.Collection
, java.util.Set
, чтобы узнать, как это делается, и как можно сжимать контракты.
Вы расширяете интерфейс, когда субинтерфейс обеспечивает все, что обеспечивает суперинтерфейс, и делает что-то еще важное. Например, SortedMap<K,V>
реализует Map<K,V>
, потому что отсортированная карта - это карта, которая поддерживает все операции с картой, а также некоторые операции, применимые только к отсортированным картам.
Это похоже на наследование между классами, но допускает множество реализаций. Например, можно реализовать SortedMap
как отсортированный список ключей плюс параллельный массив значений, а не дерево. Это позволит пользователям выполнять более быструю или более эффективную реализацию без изменения остальной части кода. Другими словами, наследование между интерфейсами позволяет сохранить преимущества программирования для интерфейсов.
Если мы хотим использовать множественное наследование в нашем приложении, то один интерфейс должен расширять другой интерфейс.
Чтобы сделать параллельную разработку вашего приложения, очень необходимо написать свой код таким образом, чтобы вы могли вносить новые обнаруженные требования в существующий код как можно безболезненно. Таким образом, если мы реализуем интерфейс, то конкретные имена классов блокируют вас в конкретных реализациях, что делает ненужные изменения без изменений. Поэтому мы расширяем интерфейс.
- 1. Почему мы используем бесконтактный интерфейс?
- 2. Когда мы используем 'extends' в классе в android
- 3. Когда мы используем Element? Когда мы используем Helper? Когда мы используем View Cells? в CakePHP 3
- 4. Где и почему мы используем интерфейс? C#
- 5. Когда мы используем recyclerView.setHasFixedSize?
- 6. Когда мы используем XMLSerialization?
- 7. Когда мы используем MVVM?
- 8. C# type extends interface
- 9. Когда мы действительно используем Trie?
- 10. Когда/где мы используем XMLRPC
- 11. Когда мы (действительно) используем RenderScript?
- 12. Android: Когда мы используем getIntent()?
- 13. Когда мы используем файл msbuild?
- 14. Где/когда мы используем JSON?
- 15. Когда мы используем транзакции WCF?
- 16. Когда мы используем сервис Windows?
- 17. Когда мы используем Yii RbAC?
- 18. Почему мы используем общий интерфейс (GI)?
- 19. когда используем процедуру и когда мы используем функцию?
- 20. Когда использовать extends/abstract и tools/interface в PHP
- 21. Почему мы используем интерфейс servletconfig и интерфейс servletcontext
- 22. Spring: Почему мы используем autwire интерфейс, а не реализованный класс?
- 23. Когда мы используем $ scope, и когда мы используем var в AngularJS?
- 24. Когда мы используем глобальные индексы и когда мы используем локальные индексы в Oracle?
- 25. Почему мы используем шаблон стратегии?
- 26. Что именно происходит, когда мы используем ajax
- 27. Что произошло, когда мы используем публикацию clickonce
- 28. когда мы используем блокировку и разблокировку QMutexLocker?
- 29. Что происходит, когда мы используем updatepanel?
- 30. Когда мы используем Assert.Pass() в DUnitX?