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