Поэтому, когда был написан исходный код, нужен был только, скажем, класс LabTest. Но теперь скажем, что у нас есть новые требования, чтобы добавить, например, RadiologyTest, EKGTest и т. Д.
У этих классов много общего, поэтому имеет смысл иметь базовый класс.
Но это будет означать, что класс LabTest нужно будет изменить, скажем, его интерфейс останется таким же, как и раньше, другими словами, потребителям класса LabTest не нужно будет менять.
Является ли это нарушением принципа открытости-закрытости? (LabTest модифицируется).