@shmVirus

Polymorphism

Writing code that operates on objects without knowing their concrete type at compile time.

Polymorphism decouples callers from implementations. This chapter covers dynamic dispatch, abstract classes, interfaces, and writing code against abstractions so that new concrete types can be added without changing existing calling code.