कक्षा और इंटरफ़ेस के बीच अंतर

विषयसूची:

कक्षा और इंटरफ़ेस के बीच अंतर
कक्षा और इंटरफ़ेस के बीच अंतर

वीडियो: कक्षा और इंटरफ़ेस के बीच अंतर

वीडियो: कक्षा और इंटरफ़ेस के बीच अंतर
वीडियो: जावा में क्लास और इंटरफ़ेस के बीच अंतर | सुपर कीवर्ड | उफ़ | ट्यूटोरियल #43 2024, जून
Anonim

मुख्य अंतर - क्लास बनाम इंटरफ़ेस

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

कक्षा क्या है?

ओओपी में हर चीज को एक वस्तु माना जाता है। बिना क्लास के ऑब्जेक्ट बनाना संभव नहीं है। एक वर्ग एक वस्तु बनाने का एक खाका है। घर बनाते समय आर्किटेक्ट योजना बनाता है। योजना एक वर्ग के समान है। घर वस्तु के समान है। कक्षा एक वस्तु बनाने की योजना है। एक वस्तु वह है जो कक्षा का उपयोग करके बनाई जाती है।

वर्ग में गुण और विधियाँ हैं। एक छात्र के पास नाम, ग्रेड, इंडेक्स नंबर जैसे गुण हो सकते हैं। एक छात्र के पास पढ़ने, चलने, पढ़ने जैसे तरीके हो सकते हैं। आवश्यक गुणों और विधियों के साथ एक वर्ग बनाया जाता है।

कई प्रोग्रामिंग भाषाओं में क्लास बनाने का सिंटैक्स इस प्रकार है। यह कीवर्ड क्लास का उपयोग करके बनाया गया है।

वर्ग का नाम {

// गुण

//तरीके

}

प्रोग्रामिंग भाषाएं जैसे सीऔर जावा क्लास का उपयोग करके ऑब्जेक्ट बनाने के लिए समान सिंटैक्स का पालन करती हैं। मान लें कि कक्षा का नाम विद्यार्थी है।

छात्र s1=नया छात्र ();

यह s1 वस्तु है। गुणों के लिए स्मृति आवंटित करने के लिए "नया" कीवर्ड का उपयोग किया जाता है। एक वर्ग में गुणों या चरों को प्रारंभ करने के लिए एक कंस्ट्रक्टर भी होता है।

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

इंटरफ़ेस क्या है?

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

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

इंटरफ़ेस में केवल विधियों की घोषणा होती है। कार्यान्वयन का कोई तरीका नहीं है। साथ ही, वस्तुओं को बनाने के लिए इंटरफेस का उपयोग नहीं किया जा सकता है। उनका उपयोग कई विरासतों का समर्थन करने और कोड को सुरक्षित करने के लिए किया जाता है।

इंटरफ़ेस का सिंटैक्स इस प्रकार है। इंटरफ़ेस "इंटरफ़ेस" कीवर्ड का उपयोग करता है।

इंटरफ़ेस इंटरफ़ेस_नाम{

टाइप मेथड1(पैरामीटर_लिस्ट);

टाइप मेथड2(पैरामीटर_लिस्ट);

}

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

कक्षा और इंटरफ़ेस के बीच अंतर
कक्षा और इंटरफ़ेस के बीच अंतर
कक्षा और इंटरफ़ेस के बीच अंतर
कक्षा और इंटरफ़ेस के बीच अंतर

चित्र 01: इंटरफेस का उपयोग कर कार्यक्रम

उपरोक्त कार्यक्रम के अनुसार, ए और बी इंटरफेस हैं। इंटरफ़ेस ए में एक विधि घोषणा है जो योग () है। इंटरफ़ेस बी में एक विधि घोषणा उप () है। क्लास सी दोनों इंटरफेस को लागू कर रहा है जो ए और बी हैं। इसलिए, क्लास सी योग () और उप () दोनों तरीकों को परिभाषित करता है। टाइप सी का ऑब्जेक्ट बनाने के बाद, दोनों विधियों को योग () और उप () कॉल करना संभव है।

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

कक्षा और इंटरफ़ेस के बीच समानताएं क्या हैं?

  • दोनों संदर्भ प्रकार हैं।
  • दोनों ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग से संबंधित हैं।

कक्षा और इंटरफ़ेस में क्या अंतर है?

कक्षा बनाम इंटरफ़ेस

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

सारांश - क्लास बनाम इंटरफ़ेस

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

पीडीएफ क्लास बनाम इंटरफेस डाउनलोड करें

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

सिफारिश की: