निम्नलिखित पर विचार इंटरफेस है, के साथ एक डिफ़ॉल्ट के कार्यान्वयन 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 है कि जिस तरह से है, लेकिन कारण होता है कि समस्याओं के लिए अन्य वर्गों की जरूरत नहीं है कि करने के लिए संदर्भ डिफ़ॉल्ट कार्यान्वयन.