August 2017
Intermediate to advanced
440 pages
10h
English
A sealed class is a class with a limited number of subclasses (sealed subtyping hierarchy). Prior to Kotlin 1.1, these subclasses had to be defined inside a sealed class body. Kotlin 1.1 weakened this restriction and allowed us to define sealed class subclasses in the same file as a sealed class declaration. All the classes are declared close to each other, so we can easily see all possible subclasses by simply looking at one file:
//vehicle.kt
sealed class Vehicle()
class Car : Vehicle()
class Truck : Vehicle()
class Bus : Vehicle()
To mark a class as sealed, simply add a sealed modifier to the class declaration header. The preceding declaration means that the Vehicle class can be only extended by three classes, Car, Truck ...
Read now
Unlock full access