जबकि कुछ लोग इंटरफेस के बारे में सोचते हैं कि "एक-" संबंधों के बजाय "कर सकते हैं" के रूप में, मुझे लगता है कि उनके बारे में सोचने में यह और मददगार है "एक __er" या "एक __able चीज़ है"। वास्तविक दुनिया के समानता का उपयोग करने के लिए, एक पुस्तक (मृत पेड़ संस्करण), एक बाउंड पेपर पत्रिका, एक समाचार पत्र, एक प्रचार विज्ञापन फ्लायर, एक संकेत, और कागज पर एक स्क्रैप लिखा गया है, जो कुछ लिखा है, सभी "पठनीय चीजें हैं "। अगर कोई अन्य व्यक्ति को एक पुस्तक दिखाता है और पूछता है, "क्या यह एक पठनीय चीज़ है", तो जवाब यह होगा कि यह है। दूसरी ओर, अगर कोई अन्य व्यक्ति को एक पुस्तक दिखाना था और पूछें "यह क्या है?" प्रतिक्रिया "एक पठनीय चीज़" नहीं होगी, लेकिन संभवतः "एक पुस्तक", या शायद "चार्ल्स डिकेंस द्वारा उपन्यास 'ग्रेट एक्सपेक्शंस' के दूसरे अमेरिकी संस्करण की एक हार्डकवर पांचवीं प्रिंटिंग प्रति"। किसी भी प्रकार की "पठनीय चीज़" में केवल कुछ "पठनीय चीज़" होने से परे कुछ पहचान है।
इसी प्रकार जावा इंटरफेस के साथ। एक ऑब्जेक्ट इंटरफेस की मनमानी संख्या को कार्यान्वित कर सकता है, लेकिन प्रत्येक ऑब्जेक्ट में इंटरफेस के सेट के अतिरिक्त एक प्रकार होना चाहिए। ध्यान दें कि एक विधि को परिभाषित करना संभव है जो एक इंटरफ़ेस लागू करने वाले अज्ञात प्रकार की एक नई वस्तु वापस करेगा; यह किसी भी प्रकार की वस्तु को वांछित करने के बिना, "कृपया मुझे कुछ पढ़ने के लिए" प्राप्त करने के बराबर होगा। इस तरह की एक विधि वापस लौटने के लिए एक प्रकार का ऑब्जेक्ट चुन सकती है, और कॉलर को "पठनीय" दे सकती है। हालांकि, सामान्य तरीकों के विपरीत, कन्स्ट्रक्टरों को कॉलर को सटीक रूप से निर्दिष्ट करने की आवश्यकता होती है कि किस प्रकार की ऑब्जेक्ट वांछित है। केवल यह निर्दिष्ट करना कि एक वस्तु "पठनीय" पर्याप्त विनिर्देश नहीं होगी।
क्या आपको यकीन है कि ** इंटरफ़ेस को तत्काल नहीं किया जा सकता **? तो अज्ञात वर्ग के बारे में क्या? –
@Quoi: जैसा कि आपने स्वयं कहा है, अज्ञात वर्ग - कुछ इंटरफ़ेस का अज्ञात कार्यान्वयन। –