Sobes.tech
Junior — Middle

Kas Java-s saab luua pärandamist klassist, mis on deklareeritud kui Sealed?

sobes.tech AI

Vastus AI-lt

Java keeles, klass, mis on deklareeritud kui sealed, piirab nende klasside ringi, mis võivad sellest pärida. Pärimine sealed klassist on võimalik, kuid ainult juhul, kui alamklass on selgelt märgitud lubatud (permits) nimekirjas sealed klassi deklaratsioonis.

Näide:

public sealed class Shape permits Circle, Rectangle {
    //...
}

public final class Circle extends Shape {
    //...
}

public final class Rectangle extends Shape {
    //...
}

Kui proovite luua klassi, mis ei ole märgitud permits-s, annab kompilaator vea. Seega on pärimine sealed klassist võimalik, kuid rangelt kontrollitud.