Поскольку вопрос о чистых абстрактных классах, то я бы сказал, что ответ будет связан с наследованием и областью. Это то, о чем я много раз задумывался, и это то, что я придумал.
Очевидно, что функции, связанные с множественным наследованием, были получены ранее, поэтому я не буду вдаваться в это. Масштаб - большой, хотя.
В интерфейсе вы не можете определить модификаторы доступа к элементу, так как они неявно общественности, ... вы определяете интерфейс общественного для его возможного осуществления. Там существует важная разница, так как вы можете определить защищенный абстрактный элемент в чистом абстрактном классе.
Наследование от такого определения класса заставит наследницей реализовать абстрактный элемент, но объем его в частном порядке для потребителей класса (хотя она должна была бы быть определена как protected
так, если класс не был помечен как дальнейшие sealed
унаследовали бы доступ).
В сущности, вы можете определить частный интерфейс, используя чистые абстрактные классы. Является ли это хорошей идеей, это совсем другой вопрос, но одно хорошее применение, которое я видел, оно используется для обеспечения шаблонов проектирования и стандартизации проектов классов.
НТН
У чистого абстрактного класса есть проблема с уникальным расширением, но он может определять другие возможности, нежели публичные. – csblo