Описание
Полиморфизм иллюстрирует другой вид инкапсуляции. Размещая различные реализации за общим интерфейсом, мы скрываем работающий в их основе механизм от клиентского кода. Это означает, что любые изменения, внесенные за этим интерфейсом, являются прозрачными для более широкой системы. Мы можем добавлять новые классы или менять код в классе, что не приведет к возникновению ошибок. Значение имеет интерфейс, а не механизм, работающий в его основе. Чем более независимы эти механизмы, тем меньше вероятность того, что внесенные изменения или поправки будут иметь эффект домино для ваших проектов