C#如何参照默认接口实施的实施者的类[重复]

0

的问题

考虑下面的接口,与默认的执行情况 TestMethod

public interface TestInterface
{
    public int TestMethod()
    {
        return 15;
    }
}

TestMethod 在以下类将导致StackOverflowException:

public class TestClass : TestInterface
{
    public int TestMethod()
    {
        return 1 + (this as TestInterface).TestMethod();
    }
}

现在我明白这是为什么,但是否有任何方法去解决它吗? 喜欢的东西 base.TestMethod() 引用一个类的实现接口?

我知道我可以重新命名方法在TestInterface和参考它在TestClass这种方式,但是,这将导致问题的其他类别需要参照默认的执行情况。

c# default-implementation interface
2021-11-22 18:03:54
1
-1

你需要使用"公共复盖"做什么你都要求。

2021-11-22 18:23:25

你能不能请详细说明你的答案有具体的代码段和更多的说明。
Mario Petrovic

其他语言

此页面有其他语言版本

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................