Псевдонимы в Kotlin

В языке программирования Kotlin есть возможность определять псевдоним для подключаемого типа, а потом обращаться к данному типу через его псевдоним. Для этого используется оператор as. Посмотрим, как это работает:

В нашем случае для функции send() был определен псевдоним sendEmail. Это значит, что в последующем для обращения к этой функции следует применять ее псевдоним:

Кроме того, для класса Message определен псевдоним EmailMessage. В результате теперь при использовании класса надо применять не оригинальное имя класса, а его псевдоним:

Когда полезны?

На практике псевдонимы наиболее полезны, если происходит импорт типов с одним и тем же именем из разных пакетов. Представим, что в проекте существует файл sms.kt:

Итак, у нас определен пакет sms, причем с классом Message и send-функцией для отправки сообщения по sms.

Давайте предположим, что в файле app.kt мы хотим одновременно применять класс Message и send-функцию как из файла email.kt, так и из файла sms.kt. Благодаря псевдонимам, проблема решается:

По материалам https://metanit.com/.