विजुअल स्टूडियो में मैं एक इंटरफेस पर राइट-क्लिक कर सकता हूं और इंप्लीमेंट इंटरफेस, या इंप्लीमेंट इंटरफेस को चुन सकता हूं।
public class Test : ITest
{
public string Id // Generated by Implement Interface
{
get { throw new NotImplementedException(); }
}
string ITest.Id // Generated by Implement Interface Explicitly
{
get { throw new NotImplementedException(); }
}
}
दोनों के बीच एकमात्र अंतर यह है कि इंटरफ़ेस का नाम इंटरफ़ेस गुणों और विधियों में जोड़ा जाता है जब वे निर्मित होते हैं यदि आप इंटरफ़ेस को स्पष्ट रूप से लागू करते हैं।
मुझे लगता है कि यह कोड को थोड़ा अधिक पठनीय बनाता है क्योंकि मैं देख सकता हूं कि वह विधि / संपत्ति कहां से आती है, हालांकि क्या इससे कोई फर्क नहीं पड़ता है कि कक्षा का उपयोग या संकलन कैसे किया जाता है? और क्या यह वास्तव में मायने रखता है अगर मैं अपने इंटरफेस को स्पष्ट रूप से या स्पष्ट रूप से लागू करता हूं?