C# में इंटरफेस की अप्रत्यक्ष और प्रत्यक्ष इम्प्लीमेंटेशन: कब और किसका उपयोग करें?
सभी को नमस्ते! मैंने अभी C# सीखना शुरू किया है और इंटरफेस के विषय पर आया हूँ। सब कुछ समझ में आता है: इंटरफेस एक कॉन्ट्रैक्ट है, क्लास इसे इम्प्लीमेंट करता है। लेकिन यहाँ मैंने देखा कि इंटरफेस को दो तरीकों से इम्प्लीमेंट किया जा सकता है: अप्रत्यक्ष (implicit) और प्रत्यक्ष (explicit)। और मैं उलझ गया।
यहाँ एक उदाहरण है:
public interface IWorker
{
void Work();
}
public class Employee : IWorker
{
// अप्रत्यक्ष इम्प्लीमेंटेशन
public void Work()
{
Console.WriteLine("Employee works");
}
}
सब काम करता है। लेकिन मैंने पढ़ा कि इसे इस तरह भी किया जा सकता है:
public class Manager : IWorker
{
// प्रत्यक्ष इम्प्लीमेंटेशन
void IWorker.Work()
{
Console.WriteLine("Manager works");
}
}
और अब, अगर मैं लिखूं:
Manager m = new Manager();
m.Wor