HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-03-10
1 <p>В языке программирования<strong>Kotlin</strong>есть возможность определять псевдоним для подключаемого типа, а потом обращаться к данному типу через его псевдоним. Для этого используется оператор<strong>as</strong>. Посмотрим, как это работает:</p>
1 <p>В языке программирования<strong>Kotlin</strong>есть возможность определять псевдоним для подключаемого типа, а потом обращаться к данному типу через его псевдоним. Для этого используется оператор<strong>as</strong>. Посмотрим, как это работает:</p>
2 <p>В нашем случае для функции send() был определен псевдоним<strong>sendEmail</strong>. Это значит, что в последующем для обращения к этой функции следует применять ее псевдоним:</p>
2 <p>В нашем случае для функции send() был определен псевдоним<strong>sendEmail</strong>. Это значит, что в последующем для обращения к этой функции следует применять ее псевдоним:</p>
3 <p>Кроме того, для класса<strong>Message</strong>определен псевдоним<strong>EmailMessage</strong>. В результате теперь при использовании класса надо применять не оригинальное имя класса, а его псевдоним:</p>
3 <p>Кроме того, для класса<strong>Message</strong>определен псевдоним<strong>EmailMessage</strong>. В результате теперь при использовании класса надо применять не оригинальное имя класса, а его псевдоним:</p>
4 <h2>Когда полезны?</h2>
4 <h2>Когда полезны?</h2>
5 <p>На практике псевдонимы наиболее полезны, если происходит импорт типов с одним и тем же именем из разных<a>пакетов</a>. Представим, что в проекте существует файл<strong>sms.kt</strong>:</p>
5 <p>На практике псевдонимы наиболее полезны, если происходит импорт типов с одним и тем же именем из разных<a>пакетов</a>. Представим, что в проекте существует файл<strong>sms.kt</strong>:</p>
6 <p>Итак, у нас определен пакет<strong>sms</strong>, причем с классом<strong>Message</strong>и<strong>send</strong>-функцией для отправки сообщения по sms.</p>
6 <p>Итак, у нас определен пакет<strong>sms</strong>, причем с классом<strong>Message</strong>и<strong>send</strong>-функцией для отправки сообщения по sms.</p>
7 <p>Давайте предположим, что в файле<strong>app.kt</strong>мы хотим одновременно применять класс Message и send-функцию как из файла<strong>email.kt</strong>, так и из файла<strong>sms.kt</strong>. Благодаря псевдонимам, проблема решается:</p>
7 <p>Давайте предположим, что в файле<strong>app.kt</strong>мы хотим одновременно применять класс Message и send-функцию как из файла<strong>email.kt</strong>, так и из файла<strong>sms.kt</strong>. Благодаря псевдонимам, проблема решается:</p>
8 <p><em>По материалам https://metanit.com/.</em></p>
8 <p><em>По материалам https://metanit.com/.</em></p>
9  
9