Dziś mała rzecz, bo i czasu mało. Importy w Kotlinie wyglądają co do zasady tak samo jak w Javie. Zatem mamy możliwość zaimportowania pojedynczej klasy, a cały pakiet importujemy z użyciem \* (w Scali jest \_). Jest kilka drobnych różnic. Po pierwsze nie ma słówka static. Chcesz zaimportować pojedynczą metodę z obiektu (implementacja singletona) używasz import i jazda. Druga to możliwość aliasowania.

Aliasy w importach

Typowy przypadek z javy. Stworzyliśmy dwa enumy, które zawierają takie same wartości, ale ich znaczenie jest zupełnie inne. Teraz chcemy obu użyć w jednym miejscu kodu

Listing 1. Przykład konfliktu nazw

assertThat(E1.E).isEqualTo(some1);
assertThat(E2.E).isEqualTo(some2);

Jeżeli zamienimy to na importy statyczne to nie będzie działało, ponieważ powstanie konflikt nazw. W kotlinie możemy jednak stworzyć aliasy:

Listing 2. Alias importu w Kotlinie

import pl.koziolekweb.kotlin.E1.E as e1e
import pl.koziolekweb.kotlin.E2.E as e2e

// dalej w kodzie

assertThat(e1e).isEqualTo(some1);
assertThat(e2e).isEqualTo(some2);

I konflikt znika.

Mała rzecz a cieszy.