Sobes.tech
Junior — Middle

Môžete vysvetliť, ako funguje sealed class v Kotlin alebo v podobnom jazyku?

sobes.tech AI

Odpoveď od AI

Sealed trieda v Kotlin je špeciálny typ triedy, ktorý obmedzuje dedičnosť. Všetky podtriedy sealed triedy musia byť deklarované v rovnakom súbore ako samotná sealed trieda. To umožňuje prekladaču poznať všetky možné varianty dedičov a ich používať, napríklad v výrazoch when, bez potreby písania else.

Príklad:

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("Dáta: ${result.data}")
        is Result.Error -> println("Chyba: ${result.error.message}")
    }
}

Tento prístup pomáha spraviť kód bezpečnejším a pohodlnejším na spracovanie obmedzeného množstva možností.