In Kotlin, every class is
final
by default. You must explicitly use the keywordopen
, which is the exact opposite of Java’sfinal
, to allow the class to be capable of inheritance.
Lukas Lechner in How “Effective Java” may have influenced the design of Kotlin — Part 2