Sobes.tech
Junior — Middle

Vai Java val izveidot mantošanu no klases, kas ir deklarēta kā Sealed?

sobes.tech AI

Atbilde no AI

Java valodā, klase, kas deklarēta kā sealed, ierobežo to klases loku, no kurām var manto. Mantošana no sealed klases ir iespējama, bet tikai tad, ja apakšklase ir skaidri norādīta atļauto (permits) sarakstā sealed klases deklarācijā.

Piemērs:

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

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

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

Ja mēģināsiet izveidot klasi, kas nav norādīta permits, kompilators izvadīs kļūdu. Tādējādi, mantošana no sealed klases ir iespējama, bet stingri kontrolēta.