Junior — Middle
Kā īstenot mantošanu no sealed klases?
sobes.tech AI
Atbilde no AI
Kotlinā klase, kas ir deklarēta kā sealed, ierobežo mantošanu tikai tajā pašā failā, kurā tā ir deklarēta. Tas nozīmē, ka no sealed klases var manto tikai tajā pašā failā, kur tā ir definēta.
Ja klase ir deklarēta kā sealed un atrodas citā failā, no tās nevar manto.
Lai īstenotu mantošanu no sealed klases, ir jā:
- atrasties tajā pašā failā, kur ir deklarēta
sealedklase, - un deklarēt apakšklases šajā failā.
Piemērs:
sealed class Result
class Success(val data: String) : Result()
class Error(val error: Throwable) : Result()
Ja nepieciešama paplašināmība ārpus faila, sealed nav piemērots; jāizmanto parasta atvērta klase vai interfeiss.