Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C++

ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग (OOP) क्या है?

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

ऑब्जेक्ट

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

क्लास

जब आप एक क्लास परिभाषित करते हैं, तो आप एक ऑब्जेक्ट के लिए ब्लूप्रिंट परिभाषित करते हैं। यह वास्तव में किसी डेटा को परिभाषित नहीं करता, लेकिन यह परिभाषित करता है कि क्लास नाम का क्या अर्थ है, यानी क्लास का एक ऑब्जेक्ट क्या समाहित करेगा और ऐसे ऑब्जेक्ट पर कौन से ऑपरेशन किए जा सकते हैं।

OOP चार बुनियादी कॉन्सेप्ट्स पर आधारित है जिस पर यह पूरी तरह से आधारित है। आइए उन पर व्यक्तिगत रूप से एक नज़र डालें:

  • एब्स्ट्रैक्शन (Abstraction) - यह केवल बाहर की दुनिया को आवश्यक जानकारी प्रदान करने और उनके पृष्ठभूमि विवरण को छिपाने को संदर्भित करता है। उदाहरण के लिए, एक वेब सर्वर यह छुपाता है कि यह प्राप्त डेटा को कैसे प्रोसेस करता है, एंड यूजर बस एंडपॉइंट्स को हिट करता है और डेटा वापस प्राप्त करता है।
  • एनकैप्सुलेशन (Encapsulation) - एनकैप्सुलेशन डेटा मेंबर्स (वेरिएबल्स, प्रॉपर्टीज) और मेंबर फंक्शन्स (मेथड्स) को एक सिंगल यूनिट में बांधने की प्रक्रिया है। यह कुछ प्रॉपर्टीज या कंपोनेंट्स तक पहुंच को प्रतिबंधित करने का एक तरीका भी है। एनकैप्सुलेशन के लिए सबसे अच्छा उदाहरण एक क्लास है।
  • इनहेरिटेंस (Inheritance) - मौजूदा क्लास से एक नई क्लास बनाने की क्षमता को इनहेरिटेंस कहा जाता है। इनहेरिटेंस का उपयोग करके, हम एक पैरेंट क्लास से एक चाइल्ड क्लास बना सकते हैं ताकि यह पैरेंट क्लास की प्रॉपर्टीज और मेथड्स को इनहेरिट करे और अपनी खुद की अतिरिक्त प्रॉपर्टीज और मेथड्स रख सके। उदाहरण के लिए, यदि हमारे पास एक क्लास Vehicle है जिसमें Color, Price जैसे गुण हैं, तो हम इससे Bike और Car जैसी 2 क्लासेस बना सकते हैं जिनमें वे 2 गुण हों और उनके लिए विशेष अतिरिक्त गुण हों जैसे कार में numberOfWindows होता है जबकि बाइक में नहीं। यही मेथड्स पर भी लागू होता है।
  • पॉलीमॉर्फिज्म (Polymorphism) - पॉलीमॉर्फिज्म शब्द का अर्थ कई रूप होना है। आमतौर पर, पॉलीमॉर्फिज्म तब होता है जब क्लासेस का एक पदानुक्रम होता है और वे इनहेरिटेंस द्वारा संबंधित होते हैं। C++ पॉलीमॉर्फिज्म का अर्थ है कि एक मेंबर फंक्शन को कॉल करने से उस फंक्शन को निष्पादित किया जाएगा जो उस ऑब्जेक्ट के प्रकार पर निर्भर करता है जो फंक्शन को इनवोक करता है।
  1. - C# में ऐरे क्लास क्या है

    Array क्लास C# में सभी ऐरे का बेस क्लास है। यह System नेमस्पेस में परिभाषित है। Array क्लास ऐरे के साथ काम करने के लिए विभिन्न प्रॉपर्टीज़ और मेथड्स प्रदान करती है। Array क्लास की प्रॉपर्टीज़ निम्नलिखित हैं - नीचे दी गई टेबल Array क्लास की सबसे अधिक उपयोग की जाने वाली प्रॉपर्टीज़ का वर्णन करती है।

  1. - C# में ऐरे क्लास की प्रॉपर्टीज़ क्या हैं

    Array क्लास C# में सभी ऐरे का बेस क्लास है। यह System नेमस्पेस में परिभाषित है। ऐरे क्लास की प्रॉपर्टीज़ निम्नलिखित हैं - यहां Array क्लास की प्रॉपर्टीज़ हैं - Sr.No प्रॉपर्टी और विवरण 1 IsFixedSizeएक मान प्राप्त करता है जो दर्शाता है कि Array का साइज़ फिक्स्ड है। 2 IsReadOnlyएक मान प्राप्त

  1. - Python OOP बेसिक्स क्या हैं?

    Python में OOP कॉन्सेप्ट्स Python एक ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग भाषा है। हम Python में आसानी से क्लास और ऑब्जेक्ट बना और उपयोग कर सकते हैं। Python प्रोग्रामिंग भाषा के प्रमुख ऑब्जेक्ट-ओरिएंटेड कॉन्सेप्ट्स नीचे दिए गए हैं: ऑब्जेक्ट; क्लास; मेथड; इनहेरिटेंस; पॉलीमॉर्फिज्म; डेटा एब्स्ट्रैक्शन; एनकै