Safely Emulating Dynamic Dispatch

How you can use sealed classes and sealed interfaces to safely emulate dynamic dispatch by turning runtime errors into compile-time errors.

Gabriel Shanahan
The Kotlin Primer

--

— — — — — — — — — — — — — — —

THE CURRENT VERSION OF THIS ARTICLE IS PUBLISHED HERE.

— — — — — — — — — — — — — — —

Tags: #FUNDAMENTAL CONCEPT

This article is part of the Kotlin Primer, an opinionated guide to the Kotlin language, which is indented to help facilitate Kotlin adoption inside Java-centric organizations. It was originally written as an organizational learning resource for Etnetera a.s. and I would like to express my sincere gratitude for their support.

It is recommended to read the Introduction before moving on. Check out the Table of Contents for all articles.

In the previous chapter, we introduced sealed hierarchies and showed how they made it unnecessary to add an else branch to a when expression. This seems like a nice little perk, but it is not immediately apparent that it has real practical benefit in the real world.

--

--