Прогуливаясь по чужим кодам наткнулся на Класс, который содержит внутри интерфейсы:
class Aborigen{
interface Arm{
}
interface Hand{
}
//..etc code
}
Где это может быть надобно в практическом применении?
Также столкнулся, когда внутри инерфейса классы.
Это чтото новое для меня. Я запутался.
Например, когда нужно привязать интерфейс к конкретному классу.
Классический пример (из мира андроид) View.OnClickListener
Суть в том, что OnClickListener
- это такое абстрактное имя, которое можно прицепить много к чему, а в данном случае дается четкое понимание, что этот интерфейс OnClickListener
относится именно к View
Либо же этот интерфейс нужен исключительно внутри этого класса (ну мало-ли) и его не выносят наружу, что бы не плодить лишних сущностей и не запутывать читателей.
По большому счету - это просто еще один уровень изоляции и организации кода. Есть еще один классический пример (правда с классами, но суть та же) - это классы строители.
Можно сделать два файла/класса: MyObject
и MyObjectBuilder
, но более... элегантно, что-ли, будет назвать MyObjectBuilder
просто Builder
, поместить его внутрь MyObject
и вызывать как MyObject.Builder
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Встал вопрос, как переписать проход по двум разным коллекциям с присвоением данных под Java 8 Stream api
Привет, когда я выполняю команду, тогда изменяется весь текстМожно ли как-то сделать что-бы изменялся размер только нового текста или того...
Задача такая: Необходим мониторинг количества ip адресов с которых приходит наибольшее количество пакетов и выводить на экран топ 10 адресов...