Sobes.tech
Junior — Middle

Kas on võimalik deklareerida liidest kui sealed programmeerimiskeeles?

sobes.tech AI

Vastus AI-lt

Kotlin keeles alates versioonist 1.5 on võimalik deklareerida liideseid kui sealed. See võimaldab piirata nende liideste rakendavate klasside arvu, mis on kasulik tüübi kontrolli ja turvalisuse jaoks.

Näide:

sealed interface Expr

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

Seega piirab sealed interface rakenduste hierarhiat, sarnaselt sealed class-ile. Java-s sellist võimalust ei ole, kuna sealed kehtib ainult klassidele ja liidesele alates Java 15, kuid teise süntaksi ja piirangutega.