Sobes.tech
Junior — Middle

Qapalı Sinif üçün mövcud olan qurucuları sadalayabilir və təsvir edə bilərsənmi?

sobes.tech Süni İntellekt

AI-dan cavab

Kotlin-də Sealed Class, irsiyyəti məhdudlaşdıran sinifdir: bütün alt siniflər eyni faylda elan edilməlidir.

Sealed siniflər üçün konstruktorlar haqqında:

  • Sealed sinif özü, adi sinif kimi konstruktorlara sahib ola bilər.
  • Sealed sinifin alt sinifləri öz konstruktorlarına sahib ola bilər.
  • Ümumiyyətlə, sealed sinif abstrakt elan edilir və onun konstruktoru qorunan və ya ümumi ola bilər.

Nümunə:

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

Burada, sealed sinif Result açıq konstruktoru yoxdur, amma Success və Error alt siniflərinin öz konstruktorları var və parametr qəbul edir.

Beləliklə, sealed sinif özü konstruktorlara sahib ola bilər, amma daha çox onun irsi siniflərin konstruktorları vacibdir, çünki onlar konkret variantları müəyyən edir.