Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C#

C# में इंटरफेस कैसे काम करते हैं?


एक इंटरफेस एक अनुबंध को परिभाषित करता है जिसे क्लास या स्ट्रक्चर द्वारा लागू किया जाएगा। इसमें मेथड्स, प्रॉपर्टीज, इवेंट्स, और इंडेक्सर्स हो सकते हैं। एक इंटरफेस क्लास के समान है सिवाय इसके कि यह कोई डेटा नहीं रखता और केवल उस व्यवहार को निर्दिष्ट करता है जो यह कर सकता है (या अधिक सटीक रूप से, वह क्लास जो इसे लागू करती है वह कर सकती है)।

एक क्लास एक या अधिक इंटरफेस लागू कर सकती है। एक इंटरफेस सदस्य को लागू करने के लिए, क्लास में उसी मेथड परिभाषा के साथ एक पब्लिक सदस्य होना चाहिए, यानी वही नाम और सिग्नेचर।

उदाहरण के लिए, IComparer System.Collections नेमस्पेस में परिभाषित एक इंटरफेस है जो दो ऑब्जेक्ट्स की तुलना करने वाले मेथड के लिए अनुबंध को परिभाषित करता है। Car क्लास IComparer इंटरफेस को लागू करती है

public interface IDriver{    void Drive(); } public class Car : IDriver{    public string Name { get; set; }    public int Speed { get; set; }    public void Drive(){       Console.WriteLine($"{Name}: {Speed}");    } }

इंटरफेस पर सभी सदस्य अंतर्निहित रूप से abstract होते हैं और उनके कोई कार्यान्वयन विवरण नहीं होते। सभी इंटरफेस सदस्य public होते हैं। आप इंटरफेस सदस्य के साथ एक्सेस मॉडिफायर का उपयोग नहीं कर सकते। इंटरफेस को लागू करने वाली क्लास को इंटरफेस को लागू करने वाले पब्लिक मेथड्स प्रदान करने होंगे।

एक इंटरफेस अन्य इंटरफेस को विस्तारित कर सकता है, उदाहरण के लिए −

public interface IPerformer { void Perform(); } public interface ISinger : IPerformer{    void Sing(); }

इंटरफेस आपको एक क्लास में कई स्रोतों से व्यवहार शामिल करने की अनुमति देते हैं। चूंकि C# C++ की तरह मल्टीपल इनहेरिटेंस की अनुमति नहीं देता, इंटरफेस C# में मल्टीपल इनहेरिटेंस प्राप्त करने का एक तरीका है।

इंटरफेस की एक कमी यह है कि जब आप उनका उपयोग API उजागर करने के लिए करते हैं तो वे क्लासेस की तुलना में कम लचीले होते हैं। जब आप इंटरफेस के अनुबंध को बदलते हैं, तो उस इंटरफेस को लागू करने वाली सभी क्लासेस टूट जाती हैं और इंटरफेस को लागू करने के लिए अपडेट करने की आवश्यकता होती है।

उदाहरण

using System; class Program{    static void Main(){       var carOne = new Car { Name = "Honda", Speed = 100 };       var carTwo = new Car { Name = "Toyota", Speed = 70 };       carOne.Drive();       carTwo.Drive();    } } public interface IDriver{    void Drive(); } public class Car : IDriver{    public string Name { get; set; }    public int Speed { get; set; }    public void Drive(){       Console.WriteLine($"{Name}: {Speed}");    } }

आउटपुट

Honda: 100 Toyota: 70
  1. वाई-फाई एक्सटेंडर कैसे काम करते हैं? वाई-फाई एक्सटेंडर कैसे काम करते हैं?

    वाई-फाई एक्सटेंडर वही करता है जो इसका नाम बताता है: यह आपके वाई-फाई सिग्नल को बढ़ाता है ताकि आप अपने घर के अधिक क्षेत्रों में इंटरनेट का उपयोग कर सकें। यदि आप एक विशाल स्थान में रहते या काम करते हैं, जिसमें कई मंजिलें हैं या मोटी दीवारें या अन्य अवरोध हैं, तो वाई-फाई एक्सटेंडर आपके वाई-फाई सिग्नल को

  1. YouTube चैनल मेंबरशिप कैसे काम करती है? पूरी जानकारी YouTube चैनल मेंबरशिप कैसे काम करती है? पूरी जानकारी

    YouTube मेंबरशिप प्रशंसकों के लिए अपने पसंदीदा YouTube चैनल्स को सपोर्ट करने का एक तरीका है, ऑटोमेटेड मासिक दान के लिए प्रतिबद्ध होकर। मेंबरशिप YouTubers को वित्तीय सहायता प्रदान करती है और उन्हें फुल-टाइम वीडियो बनाने में मदद करती है। इसके अलावा, मेंबर्स को मेंबर-ओनली पोस्ट एक्सेस और YouTube लाइव च

  1. डेटा स्क्रैपिंग कैसे काम करती है? डेटा स्क्रैपिंग कैसे काम करती है?

    चूंकि आप इसे पढ़ रहे हैं, इस बात की अच्छी संभावना है कि आपने डेटा स्क्रैपिंग के लाभों के बारे में सुना होगा और इसकी स्वचालित तकनीक आपको बिना कोई मैन्युअल काम किए बहुत सारा डेटा इकट्ठा करने देती है। लेकिन डेटा स्क्रैपिंग वास्तव में कैसे काम करती है? और क्या यह कठिन है, या कोई भी डेटा स्क्रैप करना सी