Sobes.tech
Junior — Middle

U Kotlinu, da li se klase po defaultu smatraju zatvorenim ili otvorenim za nasleđivanje?

sobes.tech АИ

Одговор од АИ

U Kotlinu, podrazumevano, sve klase su zatvorene (final), što znači da ih ne možete naslediti bez eksplicitne najave.

Da bi klasa bila naslediva, mora biti deklarisana sa modifikatorom open:

open class BaseClass {
    // telo klase
}

class DerivedClass : BaseClass() {
    // naslednik
}

Ovo je urađeno radi povećanja sigurnosti i sprečavanja nenamernog nasleđivanja, što poboljšava kontrolu nad hijerarhijom klasa.