Tengo una interfaz para que los escritores de clase se vean obligados a implementar ciertos métodos. También quiero permitir algunos métodos implementados por defecto, así que creo una clase abstracta. El problema es que todas las clases heredan de la clase base, así que tengo algunas funciones auxiliares allí.clase abstracta no implementa interfaz
Intenté escribir: IClass con la base abstracta, pero me llegó el error de que la base no implementaba la interfaz. Bueno, por supuesto, porque quiero este resumen y para que los usuarios implementen esos métodos. Como objeto de retorno si uso base, no puedo llamar a los métodos de clase de interfaz. Si utilizo la interfaz no puedo acceder a los métodos básicos.
¿Cómo hago para que pueda tener estas clases de ayuda y obligue a los usuarios a implementar ciertos métodos?
Prefiero la solución de Mau. Es explícito y hace que el compilador haga el trabajo de conformidad para usted. En esta solución, puede olvidarse de agregar la IInterface a la clase derivada. – PlayTank
@PlayTank: ... y eventualmente fallará en alguna conversión implícita, también en tiempo de compilación. Aunque estoy de acuerdo en que la solución carece de rigor articulado. – vines