Junior — Middle
Ar įmanoma inicializuoti sealed klasės objektą Kotlin?
sobes.tech AI
Atsakymas iš AI
Kotlin'e, sealed klasė yra klasė su ribotu paveldėtojų skaičiumi, apibrėžta tame pačiame faile. Sealed klasė paprastai yra abstrakti ir tiesiogiai sukurti negalima.
Gali būti sukurti tik jos paveldėtojai, kurie konkrečiai įgyvendina sealed klasę. Pavyzdžiui:
sealed class Result {
data class Success(val data: String) : Result()
object Failure : Result()
}
val result1: Result = Result.Success("OK")
val result2: Result = Result.Failure
Taigi, tiesiogiai sukurti sealed klasės objektą neįmanoma, tačiau galima sukurti jos paveldėtojų objektus.