Sobes.tech
Junior — Middle

Meg tudná magyarázni, hogyan működik a sealed class Kotlinban vagy egy hasonló nyelvben?

sobes.tech MI

Válasz az MI-től

A sealed class Kotlinban egy speciális osztálytípus, amely korlátozza az öröklődést. Minden sealed osztály alosztályát ugyanabban a fájlban kell deklarálni, mint maga a sealed osztály. Ez lehetővé teszi a fordítónak, hogy ismerje az összes lehetséges örökös változatot, és például a when kifejezésekben használja őket anélkül, hogy else-t kellene írni.

Példa:

sealed class Result {
    data class Success(val data: String) : Result()
    data class Error(val error: Throwable) : Result()
}

fun handleResult(result: Result) {
    when(result) {
        is Result.Success -> println("Adatok: ${result.data}")
        is Result.Error -> println("Hiba: ${result.error.message}")
    }
}

Ez a megközelítés segít biztonságosabbá és kényelmesebbé tenni a kódot a korlátozott lehetőségek kezelésében.