Sobes.tech
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.