Interfaces java In Hindi
जावा प्रोग्रामिंग में यूज़ क्लास इंटरफ़ेस एक क्लास का रेफरेंस टाइप मेथड होता है, जो यूजर डिफाइन क्लास के जैसा ही डिफाइन होता है. जिसमें क्लास इंटरफ़ेस में क्लास के सिर्फ़ कॉन्स्टेंट और एब्स्ट्रैक्ट मेथड डिफाइन या डिक्लेअर हो सकते हैं। जावा क्लास में इंटरफ़ेस कांसेप्ट का यूज़ यह इंडीकेट करने में किया जाता है कि मौजूदा क्लास प्रोग्राम में डिक्लेअर क्लास क्या और कैसे कर सकती है. यहाँ क्लास इंटरफ़ेस का रोल क्लास में यह इंडीकेट करने में किया जाता है, की वह किसी क्लास में कैसे काम करेगी। यह क्लास में उसके इंटरफ़ेस को इम्प्लीमेंट करता हैं. जहा इन क्लास में डिफाइन कस्टम इंटरफेस डिक्लेयर किए गए इन क्लास मेथड के लिए कस्टम बिहेवियर मेथड इम्प्लीमेंटेशन को प्रोवाइड करना इम्पोर्टेन्ट होता है।

जावा क्लास प्रोग्रामिंग में इंटरफ़ेस एक एडवांस इम्प्लीमेंशन मेथड होता है, जावा में क्लास इंटरफ़ेस का यूज़ कई क्लास यूजर डिफाइन कस्टम पर्पस अचीव करने में किया जाता है. जैसे, किसी क्लास में डिक्लेअर एब्स्ट्रैक्टेशन, मल्टीपल इनहेरिटेंस, और पॉलीमॉर्फिज़्म, कांसेप्ट को डील करना आदि।
Defining an Interface in a Java Class.
जावा क्लास में इंटरफ़ेस को इंटरफ़ेस कीवर्ड का यूज़ करके डिक्लेअर करते है। क्लास में इंटरफ़ेस मेथड को बिना किसी बॉडी के डिफाइन करते है, जिससे की क्लास में यूज़ इंटरफ़ेस को इम्प्लीमेंट करने वाले किसी भी क्लास द्वारा इम्प्लीमेंट अवश्य किया जाना चाहिए।
Syntax for declaring an interface in a Java class.
interface Course {
// here we define a Abstract class method with no body
void select();
// here we define a Constants implicitly public, static, and final
int p = 7; // here we declare a constant data type variable
}
Declaring an interface in a Java class example.
- यहाँ इंटरफ़ेस सिंटेक्स में select() इंटरफ़ेस में एक एब्स्ट्रैक्ट क्लास मेथड डिफाइन है, यहाँ इंटरफ़ेस में इसकी कोई बॉडी डिक्लेअर या डिफाइन नहीं की गई है।
- इसी प्रकार इंट p वेरिएबल इंटरफ़ेस में डिफाइन किया गया एक कॉन्स्टेंट डाटा टाइप नेचर का है।
Implementing an interface in a Java class.
यह एक यूजर डिफाइन जावा क्लास प्रोग्राम में जो किसी एक इंटरफ़ेस को क्लास में इम्प्लीमेंट करता है, उस क्लास में यूज़ इंटरफ़ेस में डिक्लेयर किए गए सभी क्लास मेथड के लिए इंटरफ़ेस का इम्प्लीमेंटेशन प्रोवाइड करना जरूरी होता है। जिसे जावा यूजर implements कीवर्ड का यूज़ करके डिफाइन कर सकते है।
Syntax for implementing an interface in Java.
class Java implements Course {
// here we need to Provide the implementation for the abstract class method from the class interface
@Override
public void select() {
System.out.println(“Java select”);
}
}
Implementing an interface example.
- यहाँ इस क्लास इंटरफ़ेस में Java क्लास Course क्लास के एक इंटरफ़ेस को क्लास में इम्प्लीमेंट करती है, और यह select() क्लास फंक्शन मेथड के लिए इम्प्लीमेंटेशन को प्रोवाइड करती है।
Using an interface in a Java class.
जावा यूजर जब एक बार किसी क्लास में कोई क्लास इंटरफ़ेस को इम्प्लीमेंट करते है, तो यूजर उस क्लास के मल्टीप्ल ऑब्जेक्ट क्रिएट कर सकते हैं, यहाँ क्लास इंटरफ़ेस में डिफाइन किए गए क्लास मेथड को अप्लाई कर सकते हैं। यहाँ मौजूदा क्लास में डिक्लेअर क्लास ऑब्जेक्ट क्लास में प्रोवाइड किए गए इम्प्लीमेंटेशन के अकॉर्डिंग बिहेव करता है।
Example of using an interface in a Java class.
interface Course {
void select_course(); // here Abstract class method declare
int price = 999; // here we define a price Constant data type
}
class Java implements Course {
@Override
public void select_course() {
System.out.println(“Java select”);
}
}
class Python implements Course {
@Override
public void select_course() {
System.out.println(“Python select”);
}
}
public class Main {
public static void main(String[] args) {
Course java = new Java(); // here we Creating object of Java class
Course python = new Python(); // here we Creating object of Python class
java.select_course(); // here it Calls Java select_course() method
python.select_course(); // here Calls Python select_course() method
System.out.println(“Course’s price is – ” + Course.price); // here it Access constant from the class interface
}
}
Explanation of using an interface in a Java class.
- यहाँ जावा क्लास प्रोग्राम में Java और Python क्लास Course सुपर क्लास इंटरफ़ेस को इम्प्लीमेंट प्रोवाइड करते हैं, और select_course() कोर्स मेथड के अपने इम्प्लीमेंटेशन प्रोवाइड करते हैं। Java और Python क्लास दोनों को Course टाइप वेरिएबल से रेफर करता है। यह जावा क्लास में इंडीकेट करता है की एक इंटरफ़ेस कैसे पॉलीमॉर्फिक बिहेवियर को अल्लॉव करता हैं. जैसे की, यह यूजर डिफाइन एक ही क्लास मेथड कॉल ऑब्जेक्ट डाटा टाइप के आधार पर अलग-अलग तरह से बिहेव करता है।
- क्लास इंटरफ़ेस से कॉन्स्टेंट डाटा टाइप price को Course.price के माध्यम से एक्सेस किया जाता है. क्योंकि यहाँ क्लास में इंटरफ़ेस कॉन्स्टेंट डिफ़ॉल्ट रूप से पब्लिक, स्टैटिक, और फ़ाइनल डाटा टाइप नेचर के हो सकते हैं।
Features of a Java Class Interface.
Methods in a Class Interface.
डिफ़ॉल्ट रूप से, जावा क्लास प्रोग्राम में डिफाइन किए गए इंटरफ़ेस में सभी मेथड एब्स्ट्रैक्ट नेचर के होते हैं, Java 8 वर्जन में अवेलेबल स्टैटिक और डिफ़ॉल्ट मेथड को छोड़कर।
जावा यूजर एक क्लास इंटरफ़ेस में मेथड बॉडी तब तक प्रोवाइड नहीं कर सकते है, जब तक जावा यूजर एक डिफ़ॉल्ट या स्टैटिक कीवर्ड Java 8 वर्जन और उसके बाद के जावा वर्जन में यूज़ न करें।
जावा क्लास मेथड तब तक इम्प्लिसिटली पब्लिक और एब्स्ट्रैक्ट नेचर के होते हैं, जब तक की उन्हें डिफ़ॉल्ट या स्टैटिक के रूप में डिक्लेयर या डिफाइन न किया जाए।
Constants in a Class Interface.
जावा क्लास इंटरफ़ेस में डिक्लेयर किए गए सभी वेरिएबल इम्प्लिसिटली पब्लिक, स्टैटिक, और फ़ाइनल, नेचर के होते हैं। इस वजह से, क्लास प्रोग्राम में इन्हे डिक्लेयर करते समय उन्हें इनिशियलाइज़ करना जरूरी होता है।
Access Modifiers in a Class Interface.
जावा क्लास इंटरफ़ेस मेथड हमेशा पब्लिक नेचर के होते हैं, चाहे जावा यूजर इन्हे एक पब्लिक एक्सेस मॉडिफायर के रूप में इंडीकेट न करे।
इसमें वेरिएबल भी पब्लिक, स्टैटिक, और फ़ाइनल, नेचर के डिफाइन होते हैं।
Multiple Class Inheritance.
क्लास इंटरफ़ेस प्रोग्राम की तुलना में क्लास इनहेरिटेंस सिर्फ़ एक सुपरक्लास प्रॉपर्टीज से इनहेरिट होता हैं, जावा क्लास प्रोग्राम में एक क्लास कई इंटरफ़ेस इम्प्लीमेंट को प्रोवाइड कर सकती है, जिससे की यह क्लास बिहेवियर की मल्टीपल इनहेरिटेंस स्टेज को अचीव कर सके।
Java Class Interface Inheritance.
जावा क्लास इनहेरिटेंस कांसेप्ट में एक क्लास इंटरफ़ेस दूसरे इंटरफ़ेस को इनक्रीस कर सकते है, जिससे की, क्लास में हायरार्किकल इंटरफ़ेस स्ट्रक्चर डेवलप हो सकते हैं।
Default methods in a Java class interface/in Java 8 and above.
जावा वर्जन 8 क्लास इंटरफ़ेस में डिफ़ॉल्ट मेथड डिफाइन हो सकते हैं, जो की मौजूदा क्लास बॉडी वाले मेथड के रूप में डिफाइन होते हैं। जावा वर्जन 8 में डिफ़ॉल्ट क्लास मेथड जावा यूजर इंटरफ़ेस को इम्प्लीमेंट होने वाली मौजूदा क्लास को बिना ब्रेक किए इंटरफ़ेस में नए क्लास मेथड को यूनिक आर्डर में ऐड करने के फीचर्स प्रोवाइड करते हैं।
Syntax of a default method in a Java class.
interface Course {
// here we define a Abstract class method
void select_course();
// here we use Default class method with body
default void selection() {
System.out.println(“Java course selection”);
}
}
class Java implements Course {
@Override
public void select_course() {
System.out.println(“Java select”);
}
}
public class Main {
public static void main(String[] args) {
Java java = new Java();
java.select_course(); // here it Calls Java select_course() method
java.selection(); // here it Calls the default selection() method from the Course interface
}
}
Explaining the default method in a Java class.
- यहाँ कोर्स क्लास इंटरफ़ेस में select_course() मेथड एक डिफ़ॉल्ट क्लास मेथड डिफाइन है। इसमें एक बॉडी डिफाइन की गई है, और यह सभी इम्प्लीमेंटिंग क्लास यूज़ के लिए अवेलेबल होता है, जब तक कि वे इसे मैन्युअल रूप से ओवरराइड न करें।
- यहाँ जावा क्लास selection() फंक्शन को इम्प्लीमेंट करता है, और select_course() के डिफ़ॉल्ट इम्प्लीमेंटेशन को यूज़ करता है।
