Junior — Middle
Je možné v programovacím jazyce deklarovat rozhraní jako sealed?
sobes.tech AI
Odpověď od AI
V jazyce Kotlin je od verze 1.5 možné deklarovat rozhraní jako sealed. To umožňuje omezit množinu tříd, které mohou toto rozhraní implementovat, což je užitečné pro kontrolu a bezpečnost typů.
Příklad:
sealed interface Expr
class Const(val number: Double) : Expr
class Sum(val e1: Expr, val e2: Expr) : Expr
Tímto způsobem sealed interface omezuje hierarchii implementací, podobně jako sealed class. V Javě tato možnost neexistuje, protože sealed se používá pouze u tříd a rozhraní od Java 15, ale s jinou syntaxí a omezeními.