Sealed Classes
We'll cover the following
In Kotlin, on one extreme we have final
classes—that is, classes not marked as open
—which can’t have any derived classes. On the other extreme we have open
and abstract
classes, and there’s no telling which class may inherit from them. It’ll be nice to have a middle ground for a class to serve as a base to only a few classes, which the author of the class specifies.
How sealed classes work in Kotlin
Kotlin’s sealed
classes are open for extension by other classes defined in the same file but closed—that is, final
or not open
—for any other classes.
Here’s a sealed
class Card
, along with a few classes that inherit from it, all within the same file Card.kt
.
Get hands-on with 1200+ tech skills courses.