निम्नलिखित उदाहरण में मेथड के भीतर इंटरफेस का रेफरेंस वेरिएबल अरगुमेंट की तरह पास किया गया है। ऐसा करने पर मेथड उस क्लास के ऑब्जेक्ट से बंध जाता है जिसके द्वारा इंटरफ़ेस को इम्पलीमेंट किया गया है और इंटरफ़ेस का रेफेरेंस वेरिएबल उस ऑब्जेक्ट को रेफेर करता है।
Code
namespace InterfaceAsConstructorParameter
{
interface IEmail
{
void SendEmail();
}
}
using System;
namespace InterfaceAsConstructorParameter
{
class Gmail : IEmail
{
public void SendEmail()
{
Console.WriteLine("Email sent from GMAIL");
}
}
}
using System;
namespace InterfaceAsConstructorParameter
{
class Outlook : IEmail
{
public void SendEmail()
{
Console.WriteLine("Email sent from OUTLOOK");
}
}
}
namespace InterfaceAsConstructorParameter
{
class Staff
{
int ID;
IEmail Email;
public Staff(int Id, IEmail email)
{
this.ID = Id;
this.Email = email;
}
public void EmailMessage()
{
Email.SendEmail();
}
}
}
using System;
namespace InterfaceAsConstructorParameter
{
class Program
{
static void Main(string[] args)
{
IEmail gmail = new Gmail();
Staff staff = new Staff(1, gmail);
staff.EmailMessage();
Outlook outlook = new Outlook();
staff = new Staff(1, outlook);
staff.EmailMessage();
Console.ReadKey();
}
}
}
Conclusion
© अजीत कुमार, सर्वाधिकार सुरक्षित।
इस आलेख को उद्धृत करते हुए इस लेख के लिंक का भी विवरण दें। इस आलेख को कॉपीराइट सूचना के साथ यथावत साझा करने की अनुमति है। कृपया इसे ऐसे स्थान पर साझा न करें जहाँ इसे देखने के लिए शुल्क देना पडे।
No comments:
Post a Comment