Junior — Middle
Da li je moguće deklarisati interfejs kao sealed u programskom jeziku?
sobes.tech АИ
Одговор од АИ
U jeziku Kotlin, od verzije 1.5, moguće je deklarisati interfejse kao sealed. Ovo omogućava ograničavanje skupa klasa koje mogu implementirati taj interfejs, što je korisno za kontrolu i sigurnost tipova.
Primer:
sealed interface Expr
class Const(val number: Double) : Expr
class Sum(val e1: Expr, val e2: Expr) : Expr
Na ovaj način, sealed interface ograničava hijerarhiju implementacija, slično kao i sealed class. U Javi, ova mogućnost ne postoji, jer se sealed primenjuje samo na klase i interfejse od Java 15 nadalje, ali sa drugačijom sintaksom i ograničenjima.