वस्तुएं उजागर तरीकों के माध्यम से अपना राज्य बदलती हैं और उन तरीकों से संवाद करती हैं। इसके विपरीत, कक्षाएं निष्क्रिय होती हैं और संदेश पास नहीं करती हैं बल्कि वस्तुओं को बनाने के लिए उपयोग किया जाता है। एक वर्ग को समान प्रकार की वस्तुओं के संग्रह के रूप में भी जाना जाता है। वस्तु और वर्ग के बीच पर्याप्त अंतर भी तुलना चार्ट में नीचे दिखाया गया है।
तुलना चार्ट
तुलना के लिए आधार | वस्तु | कक्षा |
---|---|---|
परिभाषा | एक वर्ग का एक उदाहरण ऑब्जेक्ट के रूप में जाना जाता है। | एक टेम्प्लेट या ब्लूप्रिंट जिसके साथ ऑब्जेक्ट बनाए जाते हैं, क्लास के रूप में जाना जाता है। |
निकाय के प्रकार | भौतिक | तार्किक |
सृष्टि | नए कीवर्ड द्वारा ऑब्जेक्ट का उपयोग किया जाता है। | क्लास को कीवर्ड का उपयोग करके घोषित किया जाता है। |
स्मृति आवंटन | वस्तु का निर्माण स्मृति का उपभोग करता है। | एक वर्ग का गठन स्मृति आवंटित नहीं करता है। |
वस्तु की परिभाषा
वस्तु एक वर्ग का एक उदाहरण है। C ++ में वस्तुओं को उपयोगकर्ता-परिभाषित डेटाटाइप के चर के रूप में चित्रित किया जा सकता है और कभी-कभी एक उदाहरण चर भी कहा जाता है। प्रत्येक वस्तु का कुछ संबद्ध मूल्य या एक निश्चित प्रकार होता है। एक वस्तु को वर्ग नाम का उपयोग करके लाया जाता है।
उदाहरण के लिए, एक विश्वविद्यालय एक वर्ग हो सकता है, और विश्वविद्यालय के शिक्षक वस्तु हैं। उपरोक्त उदाहरण में, विश्वविद्यालय सिर्फ एक योजना है जो एक विश्वविद्यालय के कामकाज को नियंत्रित करता है लेकिन विश्वविद्यालय में कार्यरत निकाय शिक्षक, प्रधानाध्यापक, निदेशक और अन्य विशिष्ट पदनाम वाले विशिष्ट लोग हैं जो वर्ग विश्वविद्यालय के सदस्य हैं ।
इन ऑब्जेक्ट को संग्रहीत करने के लिए कंप्यूटर की मेमोरी का उपयोग किया जाता है जो अपनी कक्षा की सटीक विशेषताओं का प्रतीक है। किसी ऑब्जेक्ट का उपयोग करने का लाभ यह है कि यह नए उपयोगकर्ता-परिभाषित डेटा प्रकारों के निर्माण की तकनीक प्रदान करता है।
ऑब्जेक्ट को समझने के लिए आइए एक क्लास और उसकी ऑब्जेक्ट बनाएं।
# नामस्थान std का उपयोग करके हटा दें; वर्ग घन {int a; सार्वजनिक: शून्य मान (इंट); int मात्रा () {वापसी (ए * ए * ए); }}; शून्य घन :: मान (इंट x) {a = x; } int main () {cube c; c.values (10); cout << "घन का आयतन है" <कक्षा की परिभाषा
कक्षा का उपयोग डेटा और उससे जुड़े कार्यों को एक साथ जोड़ने के लिए किया जाता है। यह बाहरी उपयोग से, यदि आवश्यक हो तो डेटा छिपाने में सक्षम बनाता है। एक वर्ग एक नए अमूर्त डेटा प्रकार के रूप में व्यवहार करता है जिसे किसी अन्य अंतर्निहित डेटा प्रकार के रूप में परोसा जाता है जो लगभग सभी प्रोग्रामिंग भाषाओं में मौजूद हैं।
उदाहरण के लिए, C ++ में int data type एक बिल्ट-इन डेटा प्रकार है, जिसका उपयोग आवश्यकतानुसार कई चर घोषित करने के लिए किया जा सकता है। इसी तरह, एक वर्ग एक खाका या एक योजना के रूप में भी कार्य करता है जो यह बताता है कि किसी वर्ग के ऑब्जेक्ट में कौन से डेटा और फ़ंक्शन शामिल हैं। एक वर्ग की घोषणा किसी भी वस्तु का आह्वान नहीं करती है, क्योंकि इंट डेटा प्रकार की घोषणा किसी भी चर को नहीं बनाती है। वस्तुओं को घोषित करने के लिए एक वर्ग का उपयोग किया जाता है।
कक्षा विनिर्देश में दो भाग शामिल हैं: वर्ग घोषणा और वर्ग फ़ंक्शन परिभाषाएँ।
- वर्ग की घोषणा इसके सदस्यों के कार्यक्षेत्र और प्रकार को निर्दिष्ट करती है।
- एक वर्ग फ़ंक्शन परिभाषा वर्ग फ़ंक्शन के कार्यान्वयन को निर्दिष्ट करती है।
यहाँ भी एक वर्ग बनाएँ जिसका नाम गोला है।
क्लास क्यूब {इंट साइड; सार्वजनिक: शून्य मान (इंट); int मात्रा (शून्य); }वस्तु और वर्ग के बीच मुख्य अंतर
- कक्षा समान प्रकार की वस्तुओं का संग्रह है जबकि एक वस्तु किसी वर्ग की तात्कालिकता है।
- कहा जाता है कि वस्तुओं को किसी विशिष्ट उद्देश्य के लिए प्रोग्राम में उपयोग की जाने वाली भौतिक इकाई कहा जाता है। दूसरी ओर, वर्ग को डेटा और कार्यों को बाँधने के लिए उपयोग की जाने वाली एक तार्किक इकाई माना जाता है।
- कीवर्ड नए का उपयोग करके एक ऑब्जेक्ट घोषित किया जाता है। जैसा कि होता है, वर्ग कीवर्ड का उपयोग करके एक वर्ग घोषित किया जाता है।
- किसी प्रोग्राम में, क्लास किसी भी स्टोरेज मेमोरी का उपभोग नहीं करता है जबकि ऑब्जेक्ट मेमोरी को आवंटित करता है।
निष्कर्ष
एक वस्तु एक वर्ग की विशेषताओं में अपनी स्थिति या जानकारी को संग्रहीत करती है और आह्वान के तरीकों के साथ इसके तात्कालिकता के समय उनके व्यवहार को उजागर करती है। किसी ऑब्जेक्ट की अवधारणा का उपयोग करके प्रोग्रामिंग में डेटा एनकैप्सुलेशन को लागू किया जाता है। दूसरी ओर, संबंधित प्रकार के ऑब्जेक्ट के एक समूह को एक वर्ग के रूप में जाना जाता है जो सामान्य विशेषताओं और विधियों को साझा करते हैं। एक वर्ग में परिभाषित विशेषताएँ और संचालन कक्षा के लिए अभिप्रेत नहीं हैं, बल्कि एक वर्ग की वस्तुओं के लिए है।