Допустим, у меня есть interface Base
, и мы реализуем этот интерфейс в class Base1 : Base
.
Я ожидаю, что функция расширения в форме
fun ArrayList<Base>.myFun()
также будет работатьarrayListOf(Base1(), Base1()).myFun()
, но это не так.Требуется, чтобы список был типа Base
вместо Base1
.
Разве это не странно?Или я просто что-то упускаю?
И каковы мои варианты написания функции, доступной для всех подклассов интерфейса?
Спасибо!