Junior — Middle
Lehetséges-e Kotlinben, hogy a kód futtatásakor NullPointerException keletkezzen?
sobes.tech MI
Válasz az MI-től
Igen, Kotlinben előfordulhat olyan helyzet, amikor NullPointerException keletkezik, annak ellenére, hogy beépített null-biztonsági rendszerrel rendelkezik. Ez akkor fordulhat elő, ha:
- Az !! operátort (nem-null állítás) használjuk, amely egyértelműen jelzi a fordítónak, hogy az érték nem null, de ha mégis null, kivétel keletkezik.
- Java kóddal való interakció során, ahol a null-biztonság nem garantált, és Kotlin nem mindig tudja ellenőrizni a nullability-t.
- Helytelen használat esetén a lateinit változókkal, ha azokhoz hozzáférünk az inicializálásuk előtt.
Példa az !! operátorral:
val s: String? = null
val length = s!!.length // Itt NullPointerException keletkezik