जावा में ओवरलोडिंग और ओवरराइडिंग के बीच अंतर

विषयसूची:

जावा में ओवरलोडिंग और ओवरराइडिंग के बीच अंतर
जावा में ओवरलोडिंग और ओवरराइडिंग के बीच अंतर

वीडियो: जावा में ओवरलोडिंग और ओवरराइडिंग के बीच अंतर

वीडियो: जावा में ओवरलोडिंग और ओवरराइडिंग के बीच अंतर
वीडियो: जावा ओवरलोडिंग बनाम ओवरराइडिंग। ऑब्जेक्ट ओरिएंटेड जावा ट्यूटोरियल। #16 2024, जुलाई
Anonim

मुख्य अंतर - जावा में ओवरलोडिंग बनाम ओवरराइडिंग

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

जावा में ओवरलोडिंग क्या है?

ओवरलोडिंग विभिन्न कार्यान्वयन के साथ एक ही नाम के कई तरीकों को बनाने की क्षमता है। नीचे दिए गए जावा कोड को देखें।

जावा में ओवरलोडिंग और ओवरराइडिंग के बीच अंतर
जावा में ओवरलोडिंग और ओवरराइडिंग के बीच अंतर
जावा में ओवरलोडिंग और ओवरराइडिंग के बीच अंतर
जावा में ओवरलोडिंग और ओवरराइडिंग के बीच अंतर

चित्र 01: जावा प्रोग्राम जो विभिन्न प्रकार के तर्कों के साथ ओवरलोडिंग की व्याख्या करता है

उपरोक्त कार्यक्रम के अनुसार, कक्षा ए में एक ही नाम की दो विधियाँ हैं। पहली योग विधि में दो पैरामीटर हैं। दूसरी योग विधि में तीन पैरामीटर हैं। टाइप ए और कॉलिंग सम (2, 3) का ऑब्जेक्ट बनाते समय, यह योग विधि को दो पैरामीटर के साथ कॉल करेगा जो योग (int a, int b) हैं और 5 लौटाते हैं। टाइप ए और कॉलिंग योग (2 का ऑब्जेक्ट बनाते समय), 3, 4), यह अन्य योग विधि को तीन मापदंडों के साथ कॉल करेगा जो कि योग है (int a, int b, int c) और रिटर्न 9.

विधि का नाम समान है लेकिन पैरामीटर की संख्या भिन्न है। यह देखा जा सकता है कि एक ही वस्तु अलग तरह से व्यवहार कर रही है। इस अवधारणा को ओवरलोडिंग के रूप में जाना जाता है। इसे स्टेटिक बाइंडिंग या कंपाइल्स टाइम पॉलीमॉर्फिज्म के रूप में भी जाना जाता है।

विभिन्न डेटा प्रकारों के साथ अतिभारित भी किया जा सकता है। नीचे दिए गए जावा कोड को देखें।

Java_चित्रा 02 में ओवरलोडिंग और ओवरराइडिंग के बीच अंतर
Java_चित्रा 02 में ओवरलोडिंग और ओवरराइडिंग के बीच अंतर
Java_चित्रा 02 में ओवरलोडिंग और ओवरराइडिंग के बीच अंतर
Java_चित्रा 02 में ओवरलोडिंग और ओवरराइडिंग के बीच अंतर

चित्र 02: जावा प्रोग्राम जो विभिन्न प्रकार के तर्कों के साथ ओवरलोडिंग की व्याख्या करता है

उपरोक्त कार्यक्रम के अनुसार, कक्षा ए में एक ही नाम के दो तरीके होते हैं। योग (इंट ए, इंट बी) विधि को दो पूर्णांक मान प्राप्त होते हैं। योग (डबल ए डबल बी) दो डबल मान प्राप्त करता है। टाइप ए और कॉलिंग योग (2, 3) की वस्तु बनाते समय, यह योग (int a, int b) को कॉल करेगा और मान 5 लौटाएगा। योग (3.4, 5.6) को कॉल करते समय, यह योग (डबल डबल डबल) को कॉल करेगा बी) और मान 9.0 लौटाएं। इस उदाहरण में, विधियों का एक ही नाम है, लेकिन एक अलग प्रकार के चर हैं। यह भी ओवरलोडिंग है।

जावा में ओवरराइडिंग क्या है?

जावा में, पहले से मौजूद कक्षाओं के साथ उपवर्ग बनाना संभव है।नए वर्ग को शुरू से बनाने के बजाय, पहले से मौजूद वर्ग के गुणों और विधियों का उपयोग करना संभव है। मौजूदा वर्ग सुपरक्लास है, और व्युत्पन्न वर्ग उपवर्ग है। जब उपवर्ग एक विधि के लिए एक कार्यान्वयन प्रदान करता है, जो पहले से ही सुपरक्लास में है, इसे ओवरराइडिंग के रूप में जाना जाता है। नीचे दिए गए जावा प्रोग्राम को देखें।

जावा में ओवरलोडिंग और ओवरराइडिंग के बीच महत्वपूर्ण अंतर
जावा में ओवरलोडिंग और ओवरराइडिंग के बीच महत्वपूर्ण अंतर
जावा में ओवरलोडिंग और ओवरराइडिंग के बीच महत्वपूर्ण अंतर
जावा में ओवरलोडिंग और ओवरराइडिंग के बीच महत्वपूर्ण अंतर

चित्र 03: ओवरराइड करने के लिए जावा प्रोग्राम

उपरोक्त कार्यक्रम के अनुसार, क्लास ए में एक मेथड डिस्प्ले () है। कक्षा बी कक्षा ए से विस्तारित है, इसलिए कक्षा ए के गुण और विधियां कक्षा बी द्वारा सुलभ हैं।कक्षा बी में एक विशिष्ट कार्यान्वयन के साथ विधि प्रदर्शन() है। A प्रकार का ऑब्जेक्ट बनाते समय, और डिस्प्ले विधि को कॉल करते समय, यह आउटपुट B देगा। भले ही क्लास A में डिस्प्ले मेथड हो, लेकिन इसे क्लास B डिस्प्ले मेथड ओवरराइड किया जाता है। उपवर्ग सुपरक्लास में पहले से मौजूद एक विधि को लागू कर रहा है।

यह अवधारणा एक प्रकार का बहुरूपता है और इसे ओवरराइडिंग के रूप में जाना जाता है। इसे लेट बाइंडिंग, डायनेमिक बाइंडिंग, रनटाइम पॉलीमॉर्फिज्म भी कहा जाता है।

जावा में ओवरलोडिंग और ओवरराइडिंग के बीच समानताएं क्या हैं?

  • दोनों बहुरूपता के प्रकार हैं।
  • ओवरलोडिंग और ओवरराइडिंग में, विधियों का एक ही नाम होता है।

जावा में ओवरलोडिंग और ओवरराइडिंग में क्या अंतर है?

जावा में ओवरलोडिंग बनाम ओवरराइडिंग

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

सारांश - जावा में ओवरलोडिंग बनाम ओवरराइडिंग

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

जावा में पीडीएफ ओवरलोडिंग बनाम ओवरराइडिंग डाउनलोड करें

आप इस लेख का पीडीएफ संस्करण डाउनलोड कर सकते हैं और उद्धरण नोट के अनुसार इसे ऑफ़लाइन उद्देश्यों के लिए उपयोग कर सकते हैं। कृपया पीडीएफ संस्करण यहां डाउनलोड करें जावा में ओवरलोडिंग और ओवरराइडिंग के बीच अंतर

सिफारिश की: