Здравствуйте!
В этой статье речь пойдет про вариантность параметризованных типов в Котлин. ВНИМАНИЕ. СТАТЬЯ УСТАРЕЛА. ЧИТАЙТЕ ЕЁ НОВУЮ ВЕРСИЮ НА ХАБРЕ.
Цель данной статьи дать первичное понимание работы ковариантности и контрвариантности в Котлин. Здесь будет рассмотрено использование ключевых слов in и out в параметризованных типах.
Вариантность – это состояние наличия отношений наследования между параметризованными типами, содержащими параметры из одной иерархии наследования. Это мы и будем разбирать на примерах...
Так, ну мы в прошлый раз говорили про in, сегодня поговорим про out. Но начнём мы всё равно с in, потому что запамятовали тогда вот, о чём сказать: что IN имеет ещё вот какое интересное значение: крутой, модный, популярный, в теме. Ну вот примерно так это выглядит: Blue is IN again! – Синий – снова в моде! What, you’ve never heard about them? But they are, like, THE IN BAND today. Everybody is listening to them! – Как это ты о них никогда не слышал? О них же только все и говорят (= они очень популярны), только их и слушают...