Sobes.tech
Junior — Middle

Est-il possible de déclarer une interface comme sealed dans un langage de programmation?

sobes.tech IA

Réponse de l'IA

Dans le langage Kotlin, depuis la version 1.5, il est possible de déclarer des interfaces comme sealed. Cela permet de limiter le nombre de classes pouvant implémenter cette interface, ce qui est utile pour le contrôle et la sécurité des types.

Exemple :

sealed interface Expr

class Const(val number: Double) : Expr
class Sum(val e1: Expr, val e2: Expr) : Expr

Ainsi, sealed interface limite la hiérarchie des implémentations, de manière similaire à sealed class. En Java, cette possibilité n'existe pas, car sealed ne s'applique qu'aux classes et interfaces à partir de Java 15, mais avec une syntaxe et des restrictions différentes.