En Java, es posible ampliar una interfaz con una clase anónima que puede implementar sobre la marcha. Ejemplo:C# implementación anónima de la interfaz (o clase abstracta)
Runnable myRunnable = new Runnable()
{
@Override
public void run() { /**/ }
}
(Más en: http://www.techartifact.com/blogs/2009/08/anonymous-classes-in-java.html#ixzz1k07mVIeO)
Es esto posible en C#? Si no, ¿cuáles son las alternativas viables sin tener que depender de la implementación de una plétora de subclases?
Esta es una característica que extraño de vez en cuando, especialmente porque mis interfaces son a menudo estrechas (interfaces de función) y se adhieren al principio de segregación de interfaz. Sería conveniente cuando pudiera registrar un delegado en mi configuración DI, mientras que el resto de la aplicación aún podría depender de esa interfaz (en lugar de 'Func'), sin tener que crear algún tipo de clase proxy que envuelva a ese delegado e implementar esa interfaz. –
Steven