Sobes.tech
Junior — Middle

Ką galima paskelbti paveldėtoju klasės, naudojančios Sealed modifikatorių?

sobes.tech AI

Atsakymas iš AI

Kotlin'e sealed modifikatoriumi pažymėtas klasė riboja paveldėjimą: iš tokios klasės gali paveldėti tik tos klasės, kurios yra deklaruotos tame pačiame faile kaip ir pati sealed klasė. Tai leidžia kompiliatoriui žinoti visas galimas pogrupius ir naudoti juos, pavyzdžiui, when išraiškose, nereikalaujant rašyti else šakos.

Pavyzdys:

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

// Paveldėjimas iš Result yra įmanomas tik šiame faile