Вы пометили вопрос как C #, на который я могу ответить.Но то, как реализуются делегаты, наследование и интерфейсы, может существенно различаться в разных языках, поэтому я не уверен, насколько полезны абстрактные утверждения об ОО.
"Проблема, которую можно решить с помощью делегата, также может бытьрешено с помощью интерфейса. "-C # 4.0 В интерфейсе руководства по программированию MSDN NutShell
против делегата
Конечно, вы можете делать все, что можете, с наследованием через интерфейсы, но это может привести к большомуизбыточный код.Следовательно, нет никакой хорошей замены множественному наследованию, когда это действительно необходимо, чего не хватает в C #.
Все, что вы можете делать на языке высокого уровня, которое вы можете делать в ассемблере, но это может оказаться практически бесполезным, если вы обеспокоеныпроизводительность.