इंटरफ़ेस विधियां बाहरी दुनिया के साथ अनुबंध हैं जो निर्दिष्ट करती हैं कि इस इंटरफ़ेस को लागू करने वाला वर्ग कुछ निश्चित कार्य करता है।
इंटरफ़ेस सदस्य हमेशा सार्वजनिक होते हैं क्योंकि इंटरफ़ेस का उद्देश्य अन्य प्रकारों को किसी वर्ग या संरचना तक पहुँचने में सक्षम बनाना है।
इंटरफेस में संरक्षित या आंतरिक आदि जैसे एक्सेस विनिर्देशक हो सकते हैं। इस प्रकार 'बाहरी दुनिया' को 'संपूर्ण बाहरी दुनिया' के सबसेट तक सीमित कर दिया जाता है।
उदाहरण
interface IInterface{ void Save(); } class Program{ static void Main(){ Console.ReadLine(); } }
उपरोक्त उदाहरण बिना किसी त्रुटि के ठीक से संकलित होगा
सी # 8 से पहले, इंटरफ़ेस सदस्य डिफ़ॉल्ट रूप से सार्वजनिक थे। वास्तव में, यदि आप एक इंटरफ़ेस सदस्य (सार्वजनिक सहित) पर एक एक्सेस संशोधक डालते हैं, तो यह एक कंपाइलर त्रुटि उत्पन्न करेगा।
interface IInterface{ Public void Save(); } class Program{ static void Main(){ Console.ReadLine(); } }
उपरोक्त कोड सी # 7.0 में संकलन समय त्रुटि फेंकता है, लेकिन सी # 8.0 में यह बिना किसी त्रुटि के संकलित करता है