Формулировка: * Модули верхних уровней не должны зависеть от модулей нижних уровней. Оба типа модулей должны зависеть от абстракций. * Абстракции не должны зависеть от деталей. Детали должны зависеть от абстракций.
Второй пункт это то что предоставляет полиморфизм в ООП
Первый пункт про то, что у тебя высокоуровневый компонент не должен зависеть от низкоуровневого. Это опять же про абстракции. Если у тебя верхний модуль использует конкретную реализацию, то при изменении нижнего у тебя всё сломается.