Considere a seguinte interface, com uma implementação padrão de TestMethod
public interface TestInterface
{
public int TestMethod()
{
return 15;
}
}
Chamar TestMethod
na classe a seguir fará com que uma StackOverflowException:
public class TestClass : TestInterface
{
public int TestMethod()
{
return 1 + (this as TestInterface).TestMethod();
}
}
Agora eu entendo por que isso é, mas existe alguma forma de contornar isso? Algo como base.TestMethod()
para fazer referência a uma classe implementada interfaces?
Eu sei que eu poderia mudar o nome do método em TestInterface e fazer referência a ele em TestClass de que forma, mas que poderia causar problemas para outras classes que não precisam de referência o padrão de implementação.