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

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

एपीआई आपके प्रोग्राम को अन्य प्रोग्रामों के साथ संचार करने की अनुमति देते हैं बिना यह जाने कि उन्हें कैसे लागू किया जाता है। यह मालिकाना कारणों (उस कंपनी के लिए जिसके पास अधिकार हैं) और आपकी ओर से आसान विकास दोनों के लिए महत्वपूर्ण है।

आइए देखें कि जावा इंटरफेस का उपयोग कैसे करें।

इंटरफेस को परिभाषित करना

इंटरफ़ेस घोषित करने के लिए, कीवर्ड रखें इंटरफेस इंटरफ़ेस नाम से पहले।

इंटरफ़ेस कार{
// निरंतर घोषणाएं, यदि कोई हो
इंट टायर्स = 4;
// विधि हस्ताक्षर
इंट लाइट्स (इंट ब्राइटनेस);
इंट टर्न (इंट टायर्स, स्ट्रिंग डायरेक्शन) {
// कुछ कोड
}
}

अपने इंटरफ़ेस हेडर में, आप कीवर्ड से पहले इसके दृश्यता के स्तर को भी शामिल कर सकते हैं इंटरफेस.

instagram viewer

इंटरफ़ेस में मान स्थिर हैं। ये मान डिफ़ॉल्ट रूप से हैं सार्वजनिक, स्थिर तथा अंतिम. इसलिए, इंटरफ़ेस के मुख्य भाग में मान घोषित करते समय इन कीवर्ड का उपयोग करने की कोई आवश्यकता नहीं है।

सम्बंधित: जावा में वेरिएबल स्कोप को कैसे मैनेज करें?

एक इंटरफ़ेस का शरीर भी हो सकता है डिफ़ॉल्ट, सार, स्थिर तरीके। ये तरीके डिफ़ॉल्ट रूप से हैं सह लोक, इसलिए इन एक्सेस संशोधकों को घोषित करते समय उन्हें इंगित करने की कोई आवश्यकता नहीं है।

एक विधि के शरीर के घुंघराले कोष्ठक को छोड़कर सार विधियों की घोषणा की जाती है। ऊपर दिए गए कोड में लाइन 7 देखें। कीवर्ड के साथ विधि नाम को आगे बढ़ाकर स्टेटिक विधियों की घोषणा की जाती है स्थिर & डिफ़ॉल्ट विधियों को के साथ घोषित किया गया है चूक जाना संशोधक

अब यह उल्लेख करने का एक अच्छा समय होगा कि आपको इसे लागू करने वाले किसी भी वर्ग में इंटरफ़ेस में घोषित विधियों का उपयोग करना चाहिए। ऐसा नहीं करने से संकलन त्रुटि देकर संकलक "अनुबंध को लागू" कर देगा।

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

तो, वहीं चूक जाना तरीके आते हैं। वे पुराने इंटरफ़ेस संस्करणों के साथ बाइनरी संगतता सुनिश्चित करते हुए एपीआई प्रदाताओं को अपने इंटरफेस में अधिक तरीके जोड़ने में सक्षम बनाते हैं।

डिफ़ॉल्ट int getDirection (स्ट्रिंग निर्देशांक) {
// डिफ़ॉल्ट कार्यान्वयन देने के लिए कुछ कोड लिखें
}

उपरोक्त विधि से पता चलता है कि कैसे एक डिफ़ॉल्ट विधि कहा जाता है दिशा प्राप्त करें घोषित किया जाता है। ध्यान दें कि जब आप इसे लिखते हैं तो आपको एक डिफ़ॉल्ट विधि के कार्यान्वयन को शामिल करना होगा।

इंटरफेस का उपयोग करना

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

इंटरफेस लागू करना

इंटरफ़ेस को लागू करने के लिए, कीवर्ड का उपयोग करें औजार इस वाक्यविन्यास का उपयोग करना:

क्लास ए इम्प्लीमेंट्स इंटरफेस पी{
}

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

सम्बंधित: जावा में लिंक्ड सूचियों का उपयोग करने का परिचय

यदि आप चाहते हैं कि आपकी कक्षा कई इंटरफेस लागू करे, तो आप अपने हेडर घोषणा में अल्पविराम का उपयोग करके उन्हें अलग कर सकते हैं।

उदाहरण:

क्लास ए इम्प्लीमेंट्स इंटरफेस पी, क्यू, आर{
}

यदि इंटरफ़ेस को लागू करने वाला वर्ग एक उपवर्ग है, तो नीचे दिए गए सिंटैक्स का उपयोग करें:

वर्ग ए बी लागू करता है सी, डी बढ़ाता है {
}

इंटरफेस जावा में कई विरासतों को सक्षम करते हैं। आमतौर पर, एक वर्ग केवल एक वर्ग (एकल वंशानुक्रम) का विस्तार कर सकता है। इंटरफेस ही एकमात्र तरीका है जिससे जावा कई इनहेरिटेंस को अंजाम दे सकता है।

इंटरफेस अन्य इंटरफेस का भी विस्तार कर सकते हैं, जैसे एक वर्ग दूसरे वर्ग का विस्तार कर सकता है। चाइल्ड इंटरफ़ेस उस इंटरफ़ेस के तरीकों को इनहेरिट करता है जिसका वह विस्तार करता है।

नीचे दिया गया उदाहरण देखें:

इंटरफ़ेस ए बी बढ़ाता है { 
}

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

अब आपको जावा इंटरफेस के बारे में कुछ बुनियादी जानकारी मिल गई है

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

आप जावा में मेथड ओवरलोडिंग या मेथड ओवरराइडिंग के माध्यम से पॉलीमॉर्फिज्म को लागू कर सकते हैं। आपकी जावा पठन सूची में अगला यह होना चाहिए कि इन कार्यों को कैसे कार्यान्वित किया जाए।

साझा करनाकलरवईमेल
जावा में बहुरूपता: विधियों को अधिभार या ओवरराइड कैसे करें

विधि ओवरलोडिंग और ओवरराइडिंग के साथ आपके द्वारा लिखे गए कोड में कटौती करें।

आगे पढ़िए

संबंधित विषय
  • प्रोग्रामिंग
  • जावा
  • प्रोग्रामिंग की भाषाएँ
  • प्रोग्रामिंग
लेखक के बारे में
जेरोम डेविडसन (25 लेख प्रकाशित)

जेरोम MakeUseOf में स्टाफ राइटर हैं। वह प्रोग्रामिंग और लिनक्स पर लेख शामिल करता है। वह एक क्रिप्टो उत्साही भी है और हमेशा क्रिप्टो उद्योग पर नजर रखता है।

जेरोम डेविडसन की अन्य फ़िल्में-टीवी शो

हमारे न्यूज़लेटर की सदस्यता लें

तकनीकी युक्तियों, समीक्षाओं, निःशुल्क ई-पुस्तकों और अनन्य सौदों के लिए हमारे न्यूज़लेटर से जुड़ें!

सब्सक्राइब करने के लिए यहां क्लिक करें