हेलो हेलो एवरीवन कैसे हैं आप वेलकम तो अनदर वीडियो में पीडी हम कर कर रहे होंगे नया टॉपिक जो की है ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग सो c++ जैसे की आप लोगों को पता है इस एन ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग लैंग्वेज तो जब भी c++ जो है इंडस्ट्री लेवल पे उसे हो रही होगी तो मेक परिसर तो वहां पे ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग का उसे हो रहा होगा ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग के जो फंडामेंटल टॉपिक होते हैं उनसे क्वेश्चंस भी आपसे पूछे जा सकते हैं ड्यूरिंग योर इंटरव्यूज ऑर्डर एमसीसी राउंड व्हेन यू सीटिंग पर इंटर्नशिप साप प्लेसमेंट और अभी जो हम आगे कुछ टॉपिक कर रहे होंगे एडवांस टॉपिक इन सी प्लस प्लस वहां पे भी आपके ऑब्जेक्टिव प्रोग्रामिंग की कुछ जो है बेसिक टॉपिक जो है वो उसे हो रहे होंगे तो वो सब जो है पता होने के लिए आपको क्या-क्या चीज समझनी पड़ेगी वो हम आज के लेक्चर में पूरा ए तू स कर कर लेंगे बिल बी एन शॉट वीडियो जिसमें हम पूरा उप्स इन सी प्लस प्लस के जो भी आपको फंडामेंटल टॉपिक पता हनी चाहिए वो हम कर कर रहे होंगे ठीक है तो आज क्या-क्या कर कर रहे हैं हम सबसे पहले स्टार्ट करेंगे की उप्स की जरूर क्या हुई फिर हम बात करेंगे की उप्स हैं क्या ठीक है ऑब्जेक्टिव ओरिएंटेड प्रोग्रामिंग दें वे बिल टॉक अबाउट सम ऑफ दी फंडामेंटल्स ऑफ जैसे की क्लास ऑब्जेक्ट कंस्ट्रक्टर डिस्ट्रक्टर इन कैप्सूल एब्स्ट्रेक्शन इन हेरिटेंस और बिल अलसो टॉक अबाउट एक्सिस स्पेसीफायर्स उसके बाद पॉलीमर एग्जाम इस वन ऑफ डी मोस्ट इंपॉर्टेंट टॉपिक इन उप्स जो की हम पूरा कर करेंगे वो जो फंक्शंस फ्रेंड्स फंक्शंस ये चीज जो है ये कई बड़ी पूछी जा शक्ति है आपसे एमसीसी राउंड में या फिर इंटरव्यू राउंड में तो ये आपको उनके लिए पता हनी चाहिए और आज की वीडियो में हम क्या करेंगे की हर एक टॉपिक को जो है पहले समझेंगे और फिर उसको कोड में देखेंगे साइड बाय साइड ताकि हमें नहीं सिर्फ जो है सिर्फ बुक लैंग्वेज समझ की इंप्लीमेंटेशन है हर टॉपिक की वो भी हमें समझ ए पे कोड में ठीक है तो सबसे पहले जो टॉपिक है वो है ए ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग हो रही है मोस्ट ऑफ डी पीपल जो है वो स्किप कर देते हैं वो सीधा दे मुफ्त तू डी टॉपिक व्हाट इस ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग बट उससे पहले समझना चाहिए की ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग की नीड कहां से आई तो ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग से पहले वोट भी हद वज कॉल्ड प्रोसीजर ओरिएंटेड प्रोग्रामिंग प्रोसीजर ओरिएंटेड प्रोग्रामिंग नो व्हाट इसे दिस प्रोसीजर प्रोग्रामिंग वास ए कन्वेंशनल प्रोग्रामिंग पैरोडी जो की एलियर टाइम्स में उसे किया जाता था जहां पर हम हाय लेवल लैंग्वेज का इस्तेमाल जैसे की सी को बोल और को कन्वेंशनल जो प्रोग्रामिंग पैराडायजिन थी उसको प्रोसीजर प्रोग्रामिंग कहा जाता था और प्रोसीजर प्रोग्रामिंग में क्या होता था जो भी हमारी प्रॉब्लम जो होता था जो हम सॉल्व कर रहे थे या फिर जो प्रोग्राम बोल सकते हैं जो हमारा प्रोग्राम होता था डेट वज डिवाइडेड इन टास्क दिस वन ग्रुप किया जाता था * फंक्शंस वर्ग ग्रुप इन तू फंक्शन फंक्शन ऑफ एग्जीक्यूशन स्टेटमेंट ठीक है सपोज F1 और f2 जो है वो f4 फंक्शन उसे कर रहे हैं और f4 और f3 फंक्शन जो है वो है 5 फंक्शन उसे करें और सो ऑन ठीक है तो हमारे में प्रोग्राम में जो है उसको पूरा जो प्रोग्राम था उसको काफी सारे फंक्शंस में डिवाइड किया जाता है डीज फंक्शंस कूद बी रिलेटेड तू इ अदर व वन फंक्शन इस यूजिंग अंदर फंक्शन तो प्रोसीजर प्रोग्रामिंग में हमारा जो में फॉक्स होता था में फॉक्स वज ऑन फंक्शंस ठीक है करें हमारे प्रोग्राम में किसी भी प्रोग्राम में हमारे पास कुछ डाटा होगा ठीक है जो की जी पर जो हमारे फंक्शंस हैं वो ऑपरेट कर रहे होंगे तो डाटा जो है वह कैसे फ्लो करता था हमारे प्रोसीजर इंटर प्रोग्रामिंग में सपोज वे हैव सम डाटा वे शुड बी एसेसेबल फ्रॉम F1 और f2 और f3 अब यह डाटा ताकि F1 भी एक्सेस कर पे एफ तू बी एक्सिस कर पे f3 भी एक्सेस कर पे इसके लिए इस डाटा को हमें बनाना पड़ता था ग्लोबल डाटा ठीक है ग्लोबल डाटा क्या होता है ग्लोबल डाटा होता है जो की ग्लोबल डाटा वह होता है विच इस एक्सेसिबल फ्रॉम एंटीरे प्रोग्राम मेरे प्रोग्राम में कहानी से भी हम ग्लोबल डाटा को एक्सेस कर सकते हैं अगर कोई डाटा है जो की एक फंक्शन के अंदर डिफाइन है सपोज मैंने कोई डाटा जो है F1 के अंदर डिफाइन कर दिया तो फिर वो डाटा जो है वो सिर्फ F1 के अंदर ही एक्सिस है लेकिन अगर मैं किसी डाटा को ग्लोबल डाटा बना रही हूं तो डेट इस एक्सिसिबल थ्रोट मी प्रोग्राम मेंस जो मी फंक्शंस कैन एक्सेस डाटा अब इसके जो है कुछ डिमैरिट्स हुए इसके हमारे कुछ डिमैरिट्स हुए क्या बोला की यह जो हमारा डाटा है ग्लोबल डाटा फंक्शंस अब इस वजह से अगर हमारे डाटा में हमारे जो ये ग्लोबल डाटा है इसमें अगर कोई इफेक्ट चेंज सो इट्स डिफिकल्ट तू ट्रैक आईटी इस डिफिकल्ट तू ट्रैक विच फंक्शन चेंज्ड डाटा राइट क्योंकि अगर यह ग्लोबल डाटा है तो इसको कोई भी एक्सेस कर सकता है F1 f2 f3 f4 और f5 भी एक्सिस कर सकता है तो अगर इसकी वैल्यू चेंज हो रही है तो हमें नहीं पता की वो किस फंक्शन ने चेंज कारी है राइट और दूसरी बात अगर हमारी ये जो ग्लोबल डाटा है इसका डाटा स्ट्रक्चर जो है वो चेंज हो जाता है आईएफ डाटा स्ट्रक्चर इस चेंज्ड तो हमारे जो F1 f2 f3 फंक्शंस जो है जो की इस डाटा को उसे कर रहे हैं उनकी जो डेफिनेशन है उनको भी हमें जो है वो चेंज करना पड़ेगा उनको भी फंक्शंस को भी रिवाइज करना पड़ेगा क्योंकि 20 फंक्शंस वुड बी रिटन इन ए बी की दे आर एक्सेसिंग सम सॉर्ट ऑफ डाटा स्ट्रक्चर्स नो डेट डाटा स्ट्रक्चर चेंज तो इन फंक्शंस को भी हमें जो है रिवाइज करना पड़ेगा या फिर अपडेट करना पड़ेगा ठीक है तो डीज आर सम ऑफ दी प्रॉब्लम्स जो की प्रोसीजर और गेट प्रोग्रामिंग में हमें ए रही थी और डेट लेट तू एन न्यू प्रोग्रामिंग पेरेंटिंग विच इस नॉन आज ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग में हमारा में फॉक्स वास नोट ऑन फंक्शंस बट ऑन डाटा हां ठीक है इसका मतलब जो हमारा डाटा जैसे हमारी प्रोसीजर प्रोग्रामिंग में हमारा डाटा मोस्ट ऑफ डी डाटा उसे ग्लोबल डाटा इन्वर्स फ्लाइंग फ्रिली थ्रोट थे फंक्शन थ्रोट डी प्रोग्राम सॉरी ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग में इस चीज को चेंज किया गया ताकि डी डाटा डीओईएसएन'टी फ्लो फ्रिली थ्रोाउटेड प्रोग्राम ठीक है तो इंसटिड व्हाट वे डिड वैसे वे बाइंडेड डी डाटा तू डी फंक्शन यूजिंग आईटी तू डी फंक्शन यूजिंग आईटी बेसिकली अगर हमारे पास कुछ डाटा है और हमारे को कोई फंक्शन है जो की इस डाटा को एक्सेस करना चाहता है तो उनको हमने साथ में बिना कर दिया अब ये बिना हमने कैसे किया दिस वे डिड आईटी यूजिंग ऑब्जेक्ट्स तो हमारा जो प्रोग्राम है इन ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग आर प्रोग्राम इस डिवाइडइड इन ऑब्जेक्ट्स और एच का थिस ऑब्जेक्ट्स बिल हैव सम डाटा और सम फंक्शंस ठीक है तो ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग में हमारा जो में प्रोग्राम है दिस बिल हैव सम ऑब्जेक्ट्स पर एग्जांपल वे हैव ऑब्जेक्ट वन ऑब्जेक्ट तू और ऑब्जेक्ट्स बिल हैव सम डाटा और बिल हैव सम फंक्शन नो व्हाट इसे स्पेशल हेयर इस की ऑब्जेक्ट वन में जो भी डाटा होगा डेट बिल बी एक्सेसिबल ओनली फ्रॉम फंक्शन ऑफ ऑब्जेक्ट वन सिमिलरली जो ऑब्जेक्ट तू का डाटा डेट बिल बी ओनली फ्रॉम फंक्शन ऑफ ऑब्जेक्ट तू सिमिलरली ऑब्जेक्ट थ्री का जो डाटा है डेट बिल बी एक्सिस बिल फ्रॉम फंक्शन ऑफ ऑब्जेक्ट थ्री तो बेसिकली डाटा और जो फंक्शन उसको एक्सेस कर रहा है उनको हमने साथ में बिना कर दिया इन एन ऑब्जेक्ट और एवरी ऑब्जेक्ट बिल हैव सम डाटा और सम फंक्शंस तो अगर यहां पे फंक्शन ऑफ ऑब्जेक्ट आई वांट तू एक्सेस डी डाटा ऑफ ऑब्जेक्ट वन तो आईटी बिल फर्स्ट हैव तू कांटेक्ट फंक्शन ऑफ ऑब्जेक्ट वन और थ्रू डेट फंक्शन आईटी बिल बी एबल तू एक्सिस जो ऑब्जेक्ट वन का डाटा कैन नोट डायरेक्टली एक्सिस डी डाटा ऑफ फंक्शन वन ठीक है सो दिस इस दी बेसिक कॉन्सेप्ट ऑफ ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग ठीक है अरे ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग में जो हमारा पूरा प्रोग्राम होता है उसको काफी सारे ऑब्जेक्ट्स में डिवाइड किया जाता है इसलिए इसको ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग बोला जाता है और इसका फायदा क्या है की आईटी प्रोटेक्ट्स डाटा फ्रॉम एक्सीडेंटल चेंज प्रोडक्ट्स डाटा फ्रॉम एक्सीडेंटल चेंज क्योंकि हर डाटा पे जो भी फंक्शन हर डाटा हमने रिस्टिक कर दिया ठीक है ही इस डाटा को सिर्फ यही फंक्शन एक्सेस कर सकता है अब नो ऑब्जेक्ट प्रोग्रामिंग बेसिकली आपको एक जो है आइडिया समझ में ए गया होगा ऊपर ऊपर से लेकिन ये प्रोग्रामिंग में कैसे उसे होता है कोर्ट में हम इसको कैसे उसे करेंगे ये आपको अब समझ में आएगा जब हम धीरे-धीरे करके इसके फंडामेंटल टॉपिक बनेंगे सबसे पहले स्टार्ट करते हैं विद ग्लास नो क्लास इस फंडामेंटल यूनिट डिजिटल फंडामेंटल यूनिट ऑफ ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग और क्लास को आप ऐसा समझ सकते हैं की आईटी इसे एन यूजर डिफाइंड डाटा टाइप हमने डाटा टाइप्स पढ़े थे c++ हमने पढ़ना स्टार्ट किया था हमने पढ़ा था वे हैव डाटा टाइप वे हैव डाटा टाइप ताल है अब यहां पर मैं बोल रही हूं मुझे अपने प्रोग्राम में मैंगो एप्पल ग्रेप्स कुछ फ्रूट्स है इनको मुझे यह अपने प्रोग्राम में डिफाइन करना है ठीक है जैसे की मैं इंतजार को करती हूं कैरक्टर्स को करती हूं एवं स्ट्रिंग्स को करती हूं ऐसे मुझे यहां पर अपल्स को अपने प्रोग्राम [संगीत] मैंगो एप्पल ग्रेप्स वैरियेबल्स डीज आर ऑफ टाइप्स बना शक्ति हूं आई कैन मेक एन क्लास फ्रूट ठीक है जहां थिस डाटा टाइप बिल हैव सम प्रॉपर्टीज जैसे की इसका कलर इसकाटने डाटा टाइप ठीक है फ्रूट जो यहां पर जो मैं आपको ये बोल रही हूं दिस फ्रूट इस एन डाटा टाइप आईटी इस एन यूजर डिफाइन डाटा टाइप और इसके वैरियेबल्स अगर मैं बनाऊंगी तो फ्रूट टाइप का वेरिएबल कूद बी मैंगो आईटी कूद बी एप्पल कूद बी करेक्ट पर एग्जांपल हमारा इंटिगर टाइप जो इंटीरियर डाटा टाइप होता है उसका अगर हम वैरियेबल्स बनाए हैं तो आईटी कूद बी वन ठीक है उसकी वैल्यू कूद बी वन बी तू कूद बी थ्री है ना ऐसे ही फ्रूट टाइप का जो फ्रूट जो हमने उसे है डिफाइन डाटा टाइप किया है उसका जो अगर हम वेरिएबल बनाएंगे आईटी कूद बी मैंगो एप्पल ग्रेप्स ठीक है तो यहां पे सबसे पहले तो हर क्लास में वे बिल हैव सम वे बिल डिफाइन सम डाटा या फिर प्रॉपर क्लास आई कैन डिफाइन सर फंक्शंस और ये जो मैं आपको बोल रही हूं की इस क्लास के जो वैरियेबल्स होंगे मैंगो एप्पल ग्रेप्स डीज आर एक्चुअली कॉल्ड ऑब्जेक्ट्स ठीक है तो ऑब्जेक्ट्स क्या हुए ऑब्जेक्ट्स अरे वैरियेबल्स ऑफ टाइप क्लास तब दोबारा सम मैथर्ड और फंक्शंस और इस डेटर टाइप का जब मैं कोई भी वेरिएबल बनती हूं तो वो बोला जाता है ऑब्जेक्ट तो यहां पे फ्रूट क्लास का जब मैंने कोई वेरिएबल बनाया जैसे की मैंगो एप्पल ग्रेप्स तो डीज बिल बी ऑब्जेक्ट्स वे कैन टेक अंदर जैसे की अगर मैंने एक क्लास बनाई स्टूडेंट और मैंने उसकी कुछ डाटा प्रॉपर्टीज जो है डिफाइन कारी जैसे की उसका नाम उसका रोल नंबर डिफाइन कर शक्ति हूं जैसे की गेट मार्क्स जो की मेरे को इस पर्टिकुलर स्टूडेंट के जो भी मार्क्स हैं वो बता देगा ठीक तो अब इस क्लास स्टूडेंट का अगर में कोई वेरिएबल बनती हूं अपने कोड में अगर मैं कोई वेरिएबल बनती हूं ऑफ डाटा टाइप स्टूडेंट तो डेट बिल बी कॉल्ड और ऑब्जेक्ट और जो ऑफ पीस ऑब्जेक्ट्स बिल हैव डीज प्रॉपर्टीज और दिस फंक्शन जो की मैंने अपनी स्टूडेंट क्लास में डिफाइन करें ठीक है इसलिए मैंने आपको बोला की जो क्लास जो है वो हमें एक ब्लूप्रिंट दे रही है अब इस क्लास के जो भी मैं वैरियेबल्स बनाऊंगी जो भी ऑब्जेक्ट्स बनाऊंगी इस क्लास में वे आर जो बिल हैव डेट डोज प्रॉपर्टीज और डोज फंक्शन जो की मैंने अपनी क्लास में डिफाइन कर लेट नो कोड तो आपको और क्लियर हो जाएगा तो विजिट क्लास और दें हमारा क्लास नाम ब्रैकेट और यहां पर ब्रैकेट के बाद जो हमारा सेमी कोलोन आता है यह ध्यान रखना तभी दिस बिल बी एन क्लास डिफाइन ठीक है और दें इस क्लास के अंदर वे कैन एड सम प्रॉपर्टीज और सम डेट ऑफ दिस क्लास जैसे की सम सम ठीक है प्रॉपर्टीज की इन डाटा वन इन डाटा तू और सो ऑन ठीक है सो अगर हमें यहां पर क्लास फ्रूट डिफाइन करनी है क्लास फ्रूट अगर हमें डिफाइन करनी है क्लास शुरू तो हम कुछ ऐसे कर सकते हैं अब यहां पर इसकी जो प्रॉपर्टीज है सपोज हमें प्रॉपर्टी राइट और हमें प्रॉपर्टी डालनी है कलर था बिल अलसो बी ऑफ टाइप्स्कुलर क्लास तो उसे वो आप कैसे करोगे टाइप जो भी उसका डाटा टाइप होगा उसे प्रॉपर्टी का और दें उसे प्रॉपर्टी ठीक है जैसे अगर स्टूडेंट क्लास है तो स्टूडेंट क्लास अगर हम बनाएं क्लास स्टूडेंट तो वहां पर अगर मेरे को प्रॉपर्टी डालनी है नाम तो नाम ऑफ दी स्टूडेंट कूद बी स्ट्रिंग तो आई बिल से स्ट्रिंग नाम अगर मुझे रोल नंबर डालना है स्टूडेंट का प्रॉपर्टी तो रोल नंबर बिल बी इंतजार तो आई बिल से इन रोल नंबर तो अभी जो है हम क्लास फ्रूट के साथ कम करते हैं अलसो अगर हमें इस क्लास फ्रूट का ऑब्जेक्ट बनाना है तो वह हम कैसे बना सकते हैं तो जैसे हम अपने जो इनबिल्ड डाटा टाइप्स होते हैं वो कैसे उसे करते हैं अगर मेरे को इंतजार बनाना है कोई नाम इंटिगर बनाना है तो मैं लिख देती थी ईट नाम राइट जो मेरा डाटा टाइप है और दें डी वेरिएबल नाम सिमिलरली यहां पे मेरा डाटा टाइप क्या है फ्रूट और वॅटीवर मी वेरिएबल नाम इसे विच इसे मी ऑब्जेक्ट ठीक है तो सपोज हमने एक ऑब्जेक्ट बनाया बाय डी नाम ऑफ एप्पल सो दिस इस हो आई कैन क्रिएट और ऑब्जेक्ट ऑफ टाइप फ्रूट अब इस ऑब्जेक्ट की अगर मुझे प्रॉपर्टीज सेट करनी है इस ऑब्जेक्ट की अगर मुझे नाम और कलर्स सेट करना है तो वो मैं कैसे कर शक्ति हूं सबसे पहले ये जो नाम और कलर प्रॉपर्टीज है मेरी फ्रूट क्राफ्ट में यह मैं डायरेक्टली यहां पे एक्सिस नहीं कर शक्ति जब तक मैं इन प्रॉपर्टीज को पब्लिक ना बना डन ठीक है तो ये जो है ये एक्सेस स्पेसीफायर होते हैं जो की हम आगे डिटेल में पढ़ रहे होंगे बट अभी के लिए आप ये समझ लीजिए की बाय डिफॉल्टर जो है हमारी जो प्रॉपर्टीज होती हैं ऑफ एन पर्टिकुलर क्लास वो प्राइवेट होती हैं अगर हमें उन्हें डायरेक्टली एक्सेस करना चाहते हैं अपने कोड में तो हमें उन्हें पब्लिक बनाना पड़ेगा ठीक है तो अब अगर मुझे यहां पर सेट करनी है वैल्यू आ नाम और कलर ऑफ मी ऑब्जेक्ट तो मैं कैसे करूंगी आई बिल से एप्पल और यूजिंग डॉट ऑपरेटर आई कैन एक्सेस दी प्रॉपर्टीज ऑफ दिस ऑब्जेक्ट ठीक है व्हाट आर डी प्रॉपर्टी ऑफ दिस ऑब्जेक्ट कलर और नाम तो आई कैन सेट डी नाम की इसका नाम वुड बी स्ट्रिंग नाम apple.com मैंगो = न्यू फ्रूट तो यहां पर वर क्रिएटिंग ऑब्जेक्ट यूजिंग डी न्यू कीवर्ड ठीक है और यहां पे हमें ऑब्जेक्ट नहीं मिल रहा होगा बल्कि हमें एक पेंटर वेरिएबल मिल रहा होगा तू आर ऑब्जेक्ट विच इस मैंगो ठीक है तो अगर हमें अगर हम न्यू ऑपरेटर उसे करके कोई ऑब्जेक्ट क्रिएट कर रहे हैं तो हमें एक पेंटर वेरिएबल मिल रहा होगा विच बिल बी पॉइंटेड तू डेट ऑब्जेक्ट अब उसको कैसे उसे करेंगे हम मैंगो डॉट से हम यहां पे नहीं एक्सिस कर रहे होंगे उसकी प्रॉपर्टी बल्कि हम उसे कर रहे होंगे आरो ऑपरेटर यहां पे ठीक है तो मैंगो नाम वुड बी मैंगो और मैंगो कलर वे कैन से वुड बी येलो और यहां पर हम प्रिंट कर सकते हैं अगर हम हमें एक ऑब्जेक्ट मिल रहा है ऑब्जेक्ट पेंटर के कैसे में बिल हैव तू उसे दी रो ऑपरेटर ठीक है और अगर ऑब्जेक्ट है सिंपल तो हम वहां पर डॉट ऑपरेटर उसे कर रहे होंगे ठीक है तो यहां पे हमारे दोनों ऑब्जेक्ट्स की जो प्रॉपर्टीज है वो हमने प्रिंट कर के देख लिए तो यहां पे हमें समझ में ए गया की क्लास कैसे हम डिफाइन कर सकते हैं उसके अंदर प्रॉपर्टीज कैसे डिफाइन कर सकते हैं और हो कैन वे क्रिएट ऑब्जेक्ट्स ऑफ डेट पार्टिकुलर्स मूविंग फॉरवर्ड लेट सी व्हाट आर कंस्ट्रक्टर्स तो कंस्ट्रक्ट्स रूस तू इनिशियलिसए और ऑब्जेक्ट निशुल्क और ऑब्जेक्ट की सम वालुज और फंक्शन विच इस कल व्हेन ऑब्जेक्ट इस क्रीटेड नया ऑब्जेक्ट क्रिएट करेंगे तो यह फंक्शन जो कंस्ट्रक्टर फंक्शन होगा दिस बिल बी कॉल्ड और दिस बिल हैव डी से नाम डिफॉल्ट कंस्ट्रक्टर पैरामीटराइज्ड कंस्ट्रक्टर और कॉपी कंस्ट्रक्टर जो की हम सीधा जो है कोड में देखते हैं इसकी इंप्लीमेंटेशन तो आपको एकदम क्लियर हो जाएगा की व्हाट इस कंस्ट्रक्टर और मोटेल डिफरेंट टाइप्स सो सपोज आई क्रिएट एन क्लास रेक्टेंगल ठीक है जहां पर तंगल की कुछ प्रॉपर्टीज हैं क्या प्रॉपर प्रॉपर्टीज लेंथ और ब्रेड ठीक है रेक्टेंगल क्लास का कोई ऑब्जेक्ट बनाऊं तो लेंथ और ब्रेथ की जो वालुज है वो इनिशियलिसए हो जाए ठीक है तो उसके लिए आई कैन राइट एन कंस्ट्रक्टर जिसका नाम होगा से आज डी क्लास नाम और यहां पर आई कैन से की ल को कोई डिफॉल्ट वैल्यू दे दो जीरो से इनिशियलिसए कर देते हैं बी को भी कोई वैल्यू दे दो जीरो से इनिशियलिसए कर दिया ठीक है तो यहां पे ये जो है दिस इस कॉल्ड एन कंस्ट्रक्टर और दिस इस नॉन आज एन दी फॉल्ट कंस्ट्रक्टर क्या होता है जहां पर हमारी नो अरगुमेंट्स पास्ड नो अरगुमेंट्स पास यहां पर हम कोई पैरामीटर अरगुमेंट्स पास नहीं कर रहे हैं तो दिस इस नॉन आज एन डिफॉल्ट कंस्ट्रक्टर ठीक है तो जब भी अब मैं एक मैंने रेक्टेंगल बनाया आर वन तो नो आईएफ आई ट्रेड तू प्रिंट r1.l और r1.b तो यहां पर 00 वालुज जो है वो प्रिंट हनी चाहिए ठीक है सिमिलरली एक दूसरा टाइप का कंस्ट्रक्टर होता है हमारा पैरामीटराइज्ड कंस्ट्रक्टर सो सपोज हमें अपने क्लास में जो हमारी वालुज हैं उनको हमें कुछ इनिशियलिसए करना है बाय सम अदर वालुज यू वांट तू पास सम वालुज तो वे कैन डू डेट सपोज मैंने यहां पे दो वालुज पास कारी ईट एक्स और ए राइट तो आईकॉन से ल इस इक्वल तो एक्स और बी इसे इक्वल तू ए तो बेसिकली जो मैंने एक्स और ए वालुज वहां पे पास कारी अपने कंस्ट्रक्टर में विले इनीशिएलाइजिंग मी ऑब्जेक्ट विले क्रिएटिंग मी ऑब्जेक्ट तो वो वालुज जो है वो ल और बी में चली जाएगी ठीक है तो दिस इस नॉन आज एन पैरामीटराइज्ड कंस्ट्रक्टर क्योंकि यहां पर हम अरगुमेंट्स पास कर रहे हैं ठीक है तो हो डू आई ऍन सर की ये वाला कंस्ट्रक्टर कल हो तो उसके लिए मुझे कुछ करने की जरूर नहीं है व्हेन आई क्रिएट डी ऑब्जेक्ट ठीक है सपोजिट क्रिएट एन ऑब्जेक्ट आर तू तो यहां पे ब्रैकेट में आई कैन पार्ट्स वॅटीवर वालुज और से मुझे इनिशियलिसए करना है ठीक है सपोज आई वांट तू इनीशिएलाइज्ड बाय वैल्यू थ्री और फोर तो आरटीओ रेक्टेंगल नाम से ही रहेगा यह वहां उसे होता है व्हेन वे वांट तू इनिशियलिसए और ऑब्जेक्ट बाय अंदर एक्जिस्टिंग ऑब्जेक्ट इन एन न्यू ऑब्जेक्ट आर थ्री ठीक है तो उसके लिए आई बिल उसे कॉपी कंस्ट्रक्टर कॉपी कंस्ट्रक्टर में क्या करते हैं हम पास करते हैं एक एक्जिस्टिंग ऑब्जेक्ट ठीक है सो दिस वुड बी सपोज हमने एक ऑब्जेक्ट यहां पे पास किया टाइप रेक्टेंगल आर तो यहां पे जो ल की वैल्यू हो जाएगी वो होगी r.l सिमिलरली बी की वैल्यू में जाएगा आर डॉट बी तो बेसिकली जो भी हम ऑब्जेक्ट पास कर रहे हैं उसकी वालुज हमारी न्यू ऑब्जेक्ट की वैल्यू की डाटा में या प्रॉपर्टीज में ए रही है ठीक है सो कॉपी कंस्ट्रक्टर को हम कैसे उसे करेंगे आई कैन से की आई वांट एन न्यू रेक्टेंगल r3 विच इस इक्वल तू आर तू ठीक है तो यहां पर क्या हुआ कॉपी कंस्ट्रक्टर उसे होगा जिससे r2 की वैल्यू आरती डॉट ल और 3.b तो यहां पर एक चीज ध्यान रखना हमारे क्लास में वे कैन हैव मल्टीपल कंस्ट्रक्टर और जब भी हम इनिशियलिसए करना चाहते हैं अपने ऑब्जेक्ट को बाय सम वालुज और क्रिएटिंग एन न्यू ऑब्जेक्ट तो हम कंस्ट्रक्टर का हेल्प उसे कर रहे होंगे और कंस्ट्रक्टर्स का जो नाम है डेट ओल्ड ऑलवेज विद डी से एक डी नाम ऑफ मी क्लास सो डिस्ट्रक्टर जैसे की हमने कंस्ट्रक्टर पड़ा विच इस कॉल्ड व्हेन और ऑब्जेक्ट इसे क्रिएट फंक्शन डेट इसे कॉल्ड व्हेन ऑब्जेक्ट इस डिलीटेड होता है चाहे आप मैन्युअल डिलीट करो या फिर अभी और ऑफ दी प्रोग्राम वो खुद डिलीट हो रहा हो तो उसे टाइम पर हमारा जो डिस्ट्रक्टर फंक्शन होता है वो कल होता है और दिस डिस्ट्रक्टर फंक्शन यहां पर यू कैन नोट पास अन्य पैरामीटर इन दिस डिस्ट्रक्टर फंक्शन थर्डली इसका जो नाम होगा जिसे कंस्ट्रक्टर होता है क्रिएट एन डिस्ट्रैक्टेड तो डेट बिल बी टिल्ड तिल [संगीत] क्लास नाम और इसके अंदर आई कैन से जिला फंक्शन कल हो रहा है ठीक है [संगीत] और दें व्हेन दिस फंक्शन एंड्स दिस में फंक्शन उसे टाइम पे डीज ऑब्जेक्ट्स आर डिलीटेड जो भी हमारा R1 r2 r3 ऑब्जेक्ट्स है तो उसे टाइम पे दिस डिस्ट्रक्टर फंक्शन बिल बी कॉल्ड यू कैन अलसो सी की यह डिस्टर्ब तो फंक्शन कल होता हुआ आईएफ वे डिलीट और ऑब्जेक्ट खुद मैन्युअल ठीक है सपोज इस फंक्शन को हम सॉरी इस ऑब्जेक्ट को हम ऐसे क्रिएट करते हैं यूजिंग न्यू कीबोर्ड [संगीत] ऑन दिस ठीक ओनली चेंज करना पड़ेगा [संगीत] प्रॉपर्टी है ऑफ उप्स विच एश्योर्ड बाइंडिंग ऑफ विच इन शॉर्ट बाइंडिंग ऑफ मैथर्ड और वैरियेबल्स तू गेट इन एन सिंगल यूनिट क्या हमने जस्ट अभी पड़ी ठीक है तो उप्स में जो है इन कैप्सूल इस एन प्रॉपर्टी विच इन शॉर्ट्स की जो मैथर्ड और वैरियेबल्स है या फिर जो फंक्शंस और डाटा है वो साथ में बाउंड हो इनर सिंगल यूनिट विच इस कॉल्ड दिस दिस बाइंडिंग वे इन शॉर्ट दिस बाय एंजॉयिंग की जो भी हमारा डाटा है आईटी इस ओनली एसेसेबल फ्रॉम डी क्लास मैथर्ड ठीक है जो उसे पर्टिकुलर क्लास में जो मेथड है फंक्शंस डिफाइन है सिर्फ वही उसे क्लास के डाटा को एक्सेस कर सकते हैं और थॉट्स हो वे इंश्योर इन कैप्सूलसन इन ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग इन कैप्सूलसन अलसो लीड्स तू अलसो लीड्स तू डाटा एप्स जो है उसको एब्स्ट्रेक्ट डाटा टाइप बोला जाता है सिमिलरली अगर हमें कुछ डाटा चाहिए जो की एडमिन डिवीजन में है तो हम उसको सीधा नहीं एक्सेस कर पाएंगे बल्कि एडमिन डिवीजन में जो लोग कम करते हैं उनके थ्रू हमें जाना पड़ेगा तो सिमिलरली ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग में इन कैप्सूलरेशन इन शॉर्ट्स की एक क्लास का जो डाटा है डेट कैन ओनली बी एक्सेस फ्रॉम दी फंक्शंस ऑफ डी मैथर्ड तू फाइंड इन डेट पर्टिकुलर क्लास इसको हम कोड में भी देख सकते हैं तो अगर मेरे पास एक क्लास है रेक्टेंगल ठीक है जहां पे कुछ डाटा है एक्स या इसको कोई जनरल क्लास ले लेते हैं एबीसी ठीक है विच हज सम डाटा एक्स अब इस क्लास एबीसी का जो डाटा एक्स है उसको मैं डायरेक्टली एक्सिस नहीं कर पाऊंगी अपने कोड में से तो उसके लिए मुझे फंक्शन लिखने पढ़ेंगे वाइड सेट ठीक है जहां पे मैं कुछ वैल्यू पास कर शक्ति हूं सिमिलरली आई कैन राइट एन फंक्शन गेट विच बिल रिटर्न दी वैल्यू ऑफ एक्स तू मी ठीक है सो एबीसी टाइप का अगर मैं कोई क्लास सॉरी ऑब्जेक्ट बनाऊं ऑब्जेक्ट तो अब ऑब्जेक्ट वन डॉट एक्स करके प्राइवेट तू दिस क्लास ठीक है तो अगर मुझे अब एक्स को उसे कर रहा है तो आई बी आई वुड बी एबल तू डू डेट यूजिंग फंक्शंस गेट और सेट ठीक है तो आई कैन से ऑब्जेक्ट वन डॉट सेट जहां पे मैं कोई वैल्यू पास कर शक्ति हूं राइट और अगर मुझे इसकी वैल्यू प्रिंट करवानी है तो ऑब्जेक्ट वन डॉट गेट डी वैल्यू ऑफ एक्स राइट ओनली तू डेट क्लास तो अगर उसे हमें एक्सेस करना है वे हैव तू राइट सम फंक्शंस जिनकी हेल्प से वे कैन मैनिपुलेट डेट और ऑपरेट ऑन डी डेट ऑफ बर्थ ठीक है एब्स्ट्रेक्शन इसे अंदर प्रॉपर्टी ऑफ ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग विच इनेबल्स स तू डिस्प्ले ओनली एसेंशियल इनफॉरमेशन विले हैडिंग जो भी हमारी अननेसेसरी डीटेल्स है या फिर जैसे की इंप्लीमेंटेशन डीटेल्स हैं एग्जांपल हमारे पास जो है हमने देखा है एक फंक्शन होता है हमारे पास पावर ठीक है जहां पर हम दो वालुज पास करते हैं अब यहां पे हो दिस फंक्शंस एक्चुअली वर्किंग ये हमें नहीं पता डेट इस एब्स्ट्रैक्टेड और हिडन फ्रॉम स डी इंप्लीमेंटेशन डीटेल्स हमें जो है सिर्फ इतना पता है की हम जो है फंक्शन में दो वालुज अगर पास करेंगे डेट बिल रिटर्न एक्स रेस्ट सो दिस इस एग्जांपल ऑफ एब्सट्रक्शन जो की ऑब्जेक्ट प्रोग्राम में फॉलो होता है लेट नो फॉरवर्ड तू अंदर इंपॉर्टेंट प्रॉपर्टी ऑफ ऑब्जेक्ट जो है इस टॉपिक को अच्छे से समझना इन्हेरिटेंस के थ्रू एन क्लास इन हियरिट्स प्रॉपर्टीज ऑफ अंदर क्लास ऑफ अंदर क्लास तो पर एग्जांपल मेरे पास दो क्लासेस ए की प्रॉपर्टीज ए जाए तो डेट ऑफ इन्हेरिटेंस जहां पर जो क्लास है जिसकी प्रॉपर्टीज इन्हेरीट हो रही है जैसे की ए क्लास डेट बिल बी कॉल्ड आज दी पैरंट क्लास या फिर सुपर क्लास और जो क्लास है जो की इन्हेरीट कर रही है प्रॉपर्टीज था बिल बी नॉन एस दी चाइल्ड क्लास या फिर सब क्लास क्यों इसका जो है फायदा है या फिर वही डू वे उसे दिस इन कोल्ड लेट ट्री तू अंडरस्टैंड डेट तीन क्लासेस बनानी है क्लास कर क्लास ट्रक और क्लास स्कूटर और क्लासेस में प्रॉपर्टीज जैसे की टायर एस और कैपेसिटी तो या तो मैं यह प्रॉपर्टीज जो है तीनों क्लासेस में बार-बार डिफाइन कर शक्ति हूं या फिर आई कैन मेक एन पैरंट क्लास क्लास वही कल कैपेसिटी आई कैन डिफाइन इन मी पेरेंट्स उसके बाद इन्हेरिटेंस विथ दी हेल्प ऑफ इन्हेरिटेंस आई कैन इन्हेरीट डी प्रॉपर्टीज ऑफ क्लास व्हीकल इन क्लास कर ट्रक और स्कूटर तो इससे क्या होगा ये जो टायर्स और कपासाइटिस है ये मेरे को बार-बार जो है हर क्लास में नहीं रिफाइंड करना पड़ेगा क्योंकि ये मेरे पैरंट क्लास में प्रॉपर्टीज हैं इसलिए जब मैं ये प्रॉपर्टीज इन्हेरीट करूंगी मैं चाइल्ड क्लासेस तो वो प्रॉपर्टीज जो है मेरे सारे चाइल्ड क्लासेस में भी ए जाएगी ठीक है तो आपको समझ में ए रहा है की अंधेरीटेंस हम क्यों उसे कर रहे होंगे पर फूड रेउसेबिलिटी ठीक है ताकि हमें ये जो टायर्स और कैपेसिटी प्रॉपर्टीज है ये हमें बार-बार ना जो है डिफाइन करना पड़े बल्कि हम एक पेरेंट्स से इन्हेरीट कर रहे हैं प्रोग्रामिंग तो इन्हेरिटेंस आगे देखने से पहले क्या होते हैं मोड्स ऑफ इन्हेरिटेंस तो इन्हेरीट कैसे करती है बेस क्लास अपने पेरेंट्स क्लास की प्रॉपर्टीज उसके कुछ डिफरेंट डिफरेंट मोड्स होते हैं ठीक है तो वो हम यहां पे समझ रहे होंगे दे कैन बी पब्लिक प्राइवेट और प्रोटेक्टेड सबसे पहले अभी तक जो भी हमने देखा है की क्लास जब भी हम क्रिएट करते हैं क्लास एबीसी यहां पे मैं हमेशा मेंशन कर रही थी कीवर्ड पब्लिक यह मैंने आपको बताया की ये कीवर्ड जो है यह बताता है की जो भी इसके बाद हम डाटा मेंबर्स बताएंगे या मेथड मैथर्ड डिफाइन करेंगे अपने क्लास के वो बाकी जो रेस्ट ऑफ दी कोड है वो वहां पे एक्सिसिबल होंगे या नहीं डेट बिल बी डिसाइड बाय दिस कीवर्ड ठीक है अगर ये मैं पब्लिक नहीं लिखूंगी वहां पे तो वो बाय डिफॉल्ट प्राइवेट होता है तो ये क्या है ये पब्लिक दिस इसे एन एक्सेस स्पेसीफायर तो अगर मेरी डाटा और फंक्शंस तो उसके इसमें ठीक है अगर यही पर एक और कीवर्ड होता है प्रोटेक्टेड अगर मैं यहां पर क्लास डिफाइन करते हुए मैं बोल डन प्रोटेक्टेड की शब्द उसे कर लूं मैं पर सम ऑफ मी सम डाटा इन टैक्स ठीक है तो उसके इसमें जो भी मेरा डाटा और फंक्शंस प्रोटेक्टेड की शब्द के अंदर आएंगे दे बिल बी एक्सेसिबल इन ऑन क्लास पैरंट क्लास और डेरिवेद क्लास जो चाइल्ड क्लास होगी ठीक है हमारे डाटा और फंक्शंस प्राइवेट होते हैं तो उसे कैसे में दे आर एसेसेबल ओनली इन ऑन क्लास सिर्फ उसे क्लास के जो फंक्शंस हैं फिर सिर्फ वही उसे कर सकते हैं उसे डाटा को अप्रूव्ड फंक्शंस को ठीक है तो इसको कोर्ट में देखते हैं तो हमें समझ में आएगा और कोड में ये भी देखते हैं की व्हाट आर डिफरेंट मोड्स ऑफ इन्हेरिटेंस ठीक है तो सपोज मैंने क्लास बनाई पैरंट क्लास ठीक है और यहां पर हमने कुछ डाटा जो है डिफाइन किया पब्लिक में हमने डिफाइन किया हूं मैं एक पेरेंट्स क्लास पैरंट ऑब्जेक्ट बना शक्ति हूं और आई कैन एक्सेस दिस डाटा एक्स अगर ए और स की बात करूं तो मैं वही इस प्रोटेक्टेड क्लास में उसे कर शक्ति हूं मैं यहां पे में फंक्शन में उसको डायरेक्ट उसे नहीं कर सकते ठीक है सिमिलरली स प्राइवेट है तो वो भी सिर्फ इसी क्लास में होगा अब अगर मैं पेरेंट्स ये जो मेरे पैरंट क्लास है इसकी प्रॉपर्टीज इन्हेरीट कर रही हूं सम आधार क्लास सो आई क्रिएट क्लास चाइल्ड वन ठीक है और यहां पर मैं इन्हेरीट कर रही हूं अपनी पैरंट क्लास पब्लिकली ठीक है तो यहां पर पब्लिक कीवर्ड एड करने से क्या हुआ मैं अपने पेरेंट्स क्लास की जो भी प्रॉपर्टीज ऑन को पब्लिकलीन हेरिटेज कर रहे हो अब इसकी इंप्लीकेशन क्या होगी यहां पर क्योंकि मैंने पब्लिकली इन्हेरीट कारी है प्रॉपर्टीज तो एक्स विच वास पब्लिक इन एन पैरंट क्लास एक्स बिल रीमें पब्लिक ठीक है वही बिल रीमें प्रोटेक्टेड होगा क्योंकि वह प्राइवेट है वो सिर्फ इसी क्लास में होगा सिमिलरली अगर मैं एक दूसरी चाइल्ड क्लास बनाऊं चाइल्ड तू जिसको में एक्सिस कर रही हूं इन्हेरीट कर रही हूं प्राइवेटली ठीक है मेरी पैरंट क्लास है उसकी प्रॉपर्टीज में प्राइवेटली इन्हेरीट कर रही हूं तो इसके एप्लीकेशन क्या होंगे एक्स जो होगा वह यहां पर प्राइवेट बन जाएगा और स जो है जो की मैं प्रोटेक्टेड कीवर्ड उसे करके इन्हेरीट करूं पैरंट क्लास को तो यहां पर एक्स बिल बी प्रोटेक्टेड जो मेरा एक्स यहां पर पब्लिक था डाटा वो यहां पर क्योंकि मैंने प्रोटेक्टेड [संगीत] वही बिल बी प्रोटेक्टेड और स बिल बी और एक्सरसाइज इन्हेरिटेंस पब्लिक प्राइवेट प्रोटेक्टेड ठीक है डीज आर अलसो एक्सेस स्पेसीफायर्स यहां पे डीज आर एक्सेस स्पेसीफायर्स जो बता रहे हैं की ये जो भी डाटा ए रहा है इनके अंदर ये कहां कहां एक्सिस एसेसेबल है यहां पे जो यह प्रोटेक्टेड प्राइवेट पब्लिक तो फर्स्ट ऑफ जो सबसे जो बेसिक टाइप ऑफ इन्हेरिटेंस होती है वो होती है सिंगल इन्हेरिटेंस जहां पे अगर हमारे पास ये क्लास ए है ठीक है क्लास बी अगर क्लास बी जो है वो डायरेक्टली इन्हेरीट करिए क्लास एक ही प्रॉपर्टीज जहां पे क्लास यू वुड बी डी पैरंट क्लास क्लास वे वुड बी डी चाइल्ड क्लास तो दिस इस नॉन आज सिंगल और हेरिटेंस और जो डी ये अभी हमने देख लिया है बट लेट सी दिस रनिंग इन कोड आज वेल तो लेट मेक एन पैरंट क्लास यहां पे ठीक है पैरंट क्लास के नाम से होगी और यहां पर लेट'एस जस्ट प्रिंट की कौन सी क्लास में हम करेंटली अभी हैं ठीक है सिमिलरली अगर मुझे यहां पर एक चाइल्ड क्लास बनानी है क्लास चाइल्ड जो की इस पैरंट क्लास की प्रॉपर्टीज को इन्हेरीट करें तो उसके लिए आई बिल से पब्लिक पैरंट और यहां पर भी लेट मेक ए कंस्ट्रक्टर चाइल्ड जहां पर वे बिल प्रिंट डी नाम ऑफ डी क्लास टीचर ऑफ क्लास चाइल्ड तो यहां पर क्या होगा क्योंकि दिस चाइल्ड क्लास इस इन्हेरीटिंग प्रॉपर्टीज ऑफ डी पैरंट क्लास तो पहले पैरंट क्लास का कंस्ट्रक्टर कल होगा और फिर चाइल्ड क्लास का ठीक है तो आपको यहां पे दिखे रहा है पहले जो है वो पैरंट क्लास प्रिंट हो रहा है और दें चाइल्ड क्लास और दिस वॉइस सिंगल इन्हेरिटेंस नेक्स्ट टाइप है मल्टी जहां पे दो पैरंट क्लास इस डेरिवेद फ्रॉम अनदर क्लास मतलब की हमारे पास एक क्लास बी है ठीक सी जो है वह क्लास ए की प्रॉपर्टी इन हेडेड कर रहा है ठीक है तो यहां पर मल्टीलेवल है इन्हेरिटेंस हो गया और इसको बोर्ड में कैसे लिखेंगे तो अब यहां पे अगर मैं एक ऑब्जेक्ट बनाऊं ऑफ क्लास ग्रैंड चाइल्ड ठीक है तो अब क्या होगा की ग्रैंड चाइल्ड जो है वह चाइल्ड क्लास की प्रॉपर्टीज इन्हेरीट कर रहा है और चाइल्ड क्लास जो है वह पैरंट क्लास की प्रॉपर्टीज इन हर्ड कर रहा है तो सबसे पहले जो है पैरंट क्लास का कंस्ट्रक्टर कल होगा फिर उसके बाद चाइल्ड क्लास कंस्ट्रक्टर कल होगा और फिर ग्रैंड चाइल्ड का क्लास कंस्ट्रक्टर कल हो गया तो दिस इसे नॉन एस मल्टीलेवल अंधेरीटेंस इसके बाद होती है मल्टीपल इन्हेरिटेंस जहां पे देवर इस एन क्लास डी चाइल्ड क्लास इस इन्हेरिटेंस फ्रॉम मल्टीपल पेरेंट्स ठीक है इन्हेरीटिंग फ्रॉम क्लास ए और क्लास बी तो इस क्लास में तो इस कैसे में दिस इस नॉन आज मल्टीपल इन हेरिटेज ठीक है सो सपोज वे हैव दिस क्लास पैरंट वन और वे हैव अंदर पैरंट क्लास ठीक है पैरंट तू तो पैरंट क्लासेस पैरंट तू बी तो हम यहां पर कितनी भी क्लासेस जो है वो उनकी प्रॉपर्टी इन्हेरीट कर सकते हैं की हर क्लास का पैरंट क्लास का नाम विद डी इन्हेरिटेंस मोड सेपरेटेड बाय कॉमर्स तो यहां पे अगर मैं चाइल्ड क्लास बनती हूं चाइल्ड सी ठीक है तो क्या प्रिंट होगा सबसे पहले पैरंट क्लास का कंस्ट्रक्टर कल होगा ठीक है क्योंकि पहले पैरंट वन इन्हेरीटोरियल दें पैरंट तू और दें लास्टली चाइल्ड क्लास का कंस्ट्रक्टर कल होगा नेक्स्ट टाइप ऑफ इन हेरिटेंस इस हीरआर्किकल इन इन्हेरिटेंस जहां पे हमारे पास एक पेरेंट्स क्लास होगी और उसकी मल्टीपल चाइल्ड क्लासेस होगी ठीक है जहां पर मल्टीपल चाइल्ड क्लासेस हो चुकी एक पैरंट क्लास को इन्हेरीट कर रहे हो ठीक है तो इसको भी हम कोड में देख सकते हैं जो की पैरंट वन कॉइन है रेड कर रही है और है हैव चाइल्ड तू क्लास जो की अगेन पैरंट वन को इन्हेरीट कर रही है ठीक है सो वे हैव चाइल्ड वन और चाइल्ड तू बोथ ऑफ दिस क्लासेस इन एनीथिंग फ्रॉम वन पैरंट क्लास तो इस कैसे में व्हाट बिल दिस बी कॉल्ड मल्टी ओ सॉरी दिस बिल बी कल हर इन्हेरिटेंस ठीक है और देवर इस वन लास्ट टाइप ऑफ इन हेड टेल्स विच इसे कॉल्ड हाइब्रिड अंधेरीटेंस हाइब्रिड इन्हेरिटेंस में वे हैव कांबिनेशन ऑफ मोर दें वन इन्हेरिटेंस टाइप ठीक है पर एग्जांपल हमारी एक क्लास यह है ठीक है जो की पैरंट क्लास है पर तू क्लासेस क्लास बी और क्लास सी और दें क्लास सी इसे पैरंट क्लास क्लास दी ठीक है तो यहां पे क्या हो रहा है यहां पे हर आठ के लिए इन्हेरिटेंस भी है और यहां पे मल्टी लेवल इन्हेरिटेंस भी है ठीक है सो दिस इस नॉन आज हाइब्रिड और हेरिटेज अब इन्हेरिटेंस में कई बार जो है एक प्रॉब्लम अराइज होती है विच इसे नॉन एस दी डायमंड प्रॉब्लम ठीक है जो की कई बड़ी पूछी जाति है नोट और इंटरव्यूज मोस्टली बट में बी इन योर एमसीसी राउंड और एग्जाम्स यू नो अबाउट दिस प्रॉब्लम डायमंड प्रॉब्लम में क्या होता है की बेस क्लास मल्टीपल पैरंट क्लासेस हेविंग आम इंसीसर पर एग्जांपल है वो किसी और क्लास दी क्लास आई और हो सकता है वह किसी एक सिंगल क्लासेस कर रही हो क्लासीफ तो इस कैसे में क्या होगा जो क्लास ए होगी उसमें क्लास एफ की भी इधर से भी प्रॉपर्टीज आएंगे और इधर से भी प्रॉपर्टीज आएंगे समझ रहे हो तो यहां पे जो है जो क्लास एफ की प्रॉपर्टीज आएंगे वो क्लास में दो बार याद आएंगे तो दिस इस नॉन आज एन आज एन डायमंड प्रॉब्लम इसको कोर्ट में भी हम विजुलाइज कर सकते हैं सपोज वे हैव वन पैरंट क्लास ठीक है और वे हैव तू चाइल्ड क्लासेस चाइल्ड वन और चाइल्ड तू जो की पैरंट क्लास को इन्हेरीट कर रहे हैं ठीक है और चाइल्ड तू ग्लास को बिन हेड करें तो अगर हम इसको रन करें सॉरी यहां पर अगर मैं ग्रैंड चाइल्ड क्लास का एक ऑब्जेक्ट बना तो यहां पर आप देखोगे पैरंट क्लास का जो कंस्ट्रक्टर है वह दो बड़ी कल हो रहा है ठीक है एक बड़ी पेरेंट्स कंस्ट्रक्टर कल हो रहा है थ्रू चाइल्ड वन क्लास और दूसरी भारी पैरंट क्लास का कंस्ट्रक्टर कल हो रहा है दिउ तू चाइल्ड तू क्लास सो दिस इसे नॉन एस दी डायमंड प्रॉब्लम इन इन्हेरिटेंस सो लेट मूव तू डी लास्ट टॉपिक जो हम यहां पे करना चाहते हैं डेट इस पॉलीमोरफ़िज्म पाली मोरफ़िज्म का मतलब क्या है दिस इसे दी एबिलिटी ऑफ ऑब्जेक्ट और मेथड तू टेक डिफरेंट फॉर्म्स टेक डिफरेंट फॉर्म्स और इसको आप ऐसे समझ सकते हैं की पर एग्जांपल लेफ्ट और राइट वाला राइट या फिर कैन बी राइट और रंग वाला राइट तो डी से शब्द कैन हैव डिफरेंट फॉर्म्स डिफरेंट मीनिंग्स अकॉर्डिंग तू की हम किस कांटेक्ट में उसे शब्द को उसे कर रहे हैं सिमिलरली प्रोग्रामिंग में पॉलीमोरफ़िज्म अलाउड स की हम किसी ऑब्जेक्ट या मेथड के डिफरेंट फॉर्म्स डिफाइन कर पे ठीक है और उसे हिसाब से वे हैव तू टाइप्स ऑफ पॉलीमर कंपिल टाइम और रन टाइम पॉलीमर सिस्टम [संगीत] ठीक है और कंपिल टाइम पॉलीमोरफ़िज्म इस सी इन फंक्शन ओवरलोडिंग और ऑपरेटर ओवरलोडिंग तो नोट कॉन्सेप्ट्स को हम समझते हैं उसे आपको समझ में ए जाएगा कंपिल टाइम पॉलीमरसिस्म क्या होता है फंक्शन ओवरलोडिंग में वे कैन डिफाइन ए नंबर ऑफ फंक्शन विद सम फंक्शन नाम विद सम फंक्शन नाम बट दीपक फोन डिफरेंटली अकॉर्डिंग तू अकॉर्डिंग तू डी अरगुमेंट्स पास्ड और यह अरगुमेंट्स में क्या होता है की कितने पास कर रहे हैं हम हो मनी अरगुमेंट्स वेयर पासिंग व्हाट इसे डेट टाइप उसे हिसाब से आईटी डिसाइड्स की विच फंक्शन वुड बी कॉल्ड पर एग्जांपल हमारे पास एक क्लास है शॉप ठीक है और इसमें हमने एक फंक्शन डिफाइन कर रखा है एरिया विच फाइंड आउट डी एरिया ऑफ डेट पर्टिकुलर शॉप नो आईएफ दिस एरिया फंक्शन इस बीइंग कॉल्ड पर एन सर्किल पर स्क्वायर तो इन सबके एरिया फाइंड करने का जो फॉर्मूला होगा वह डिफरेंट होगा से नाम एरिया के नाम से ही उसे फंक्शन को डिफाइन करेंगे बट उसे फंक्शन के अंदर हम कितने पैरामीटर पास कर रहे हैं और किस टाइप के पायरोमीटर पास कर रहे हैं डेट बिल डिसाइड की कौन सा जो है कौन से शॉप के लिए या कौन सा फॉर्म ऑफ दी फंक्शन कूद बी कॉल्ड और इसको अब हम कोड में देख लेते हैं तो हमें और क्लियर हो जाएगा पर एग्जांपल हमारे पास एक क्लास है एड ठीक है या फिर सम नाम के यहां पर मैं एक फंक्शन बना रही हूं एड ठीक है जहां पर अगर आप दो पैरामीटर पास कर रहे हो ठीक है यहां पर शाम उठ भी कैलकुलेट आगे प्लस ए प्लस स ठीक फंक्शन कल करती हूं की दो पैरामीटर सो दिस फंक्शन बिल बी कॉल्ड अगर मैं तीन बाइटेज पास कर रही हूं तो दिस फंक्शन बिल बी कॉल्ड सिमिलरली अगर मैं दोबारा जो इस फंक्शन को डिफाइन कर रही हूं जहां पे मैं डेसिमल पास कर रही हूं फ्लैट टाइप नंबर पास कर रही हूं एक्स और ए तो वहां पे जो मेरा सम होगा डेट बिल बी फ्लोट सम एक्स + ए और आईटी बिल प्रिंट डेट 23 तो मेरा फर्स्ट वाला फंक्शन कल होगा अगर मैं करूं एस डॉट एड तू थ्री फोर तो सेकंड फंक्शन कल होगा [संगीत] ठीक है सो डिफेंडिंग ऑन कितने पैरामीटर में पास कर रही हूं ओके सो इधर आई बिल हैव तू स्पेसिफाई डेट डीज नंबर्स आर फ्लोट ठीक है वरना जो है आईटी इस गेटिंग और फ्यूज के कौन सा जो डेफिनेशन है हमारे एड फंक्शन की वो कल करनी है सो नो आई हैव आईटी सम इन डिसाइड होगा की इनमें से कौन सा जो एड फंक्शन है वो कल होगा ठीक है अब सिमिलरली वे अलसो हैव ऑपरेटर ओवरलोडिंग ठीक है और ऑपरेटर ओवरलोडिंग शायद आपने अच्छी भी होगी प्लस ऑपरेटर के लिए वीसी की अगर हम तू प्लस थ्री करना है वहां पे भी हम प्लस ऑपरेटर उसे कर पाते हैं और अगर हमें स्ट्रिंग्स को कम कैटेनेट करना है ठीक है तो वहां पर भी हम प्लस ऑपरेटर उसे करते हैं राइट तो दिस प्लस ऑपरेटर जो है ऑपरेटर ओवरलोडिंग डिफेंडिंग ऑन की हम किस कॉन्टैक्ट्स ऑपरेटर को उसे करें अगर ऐसा तो नहीं होगा की यहां पर अगर तू प्लस थ्री यहां पे हम उसे करेंगे 23 तो हमें नहीं रहेगा प्यार करने के लिए दो परिसर नंबर्स को एड करने के लिए आप इस प्लस ऑपरेटर को ओवरलोड कीजिए ठीक है तो वो हम करके देखते हैं परिसर नंबर्स आपको पता है परिसर नंबर्स में दो पार्ट्स होते हैं रियल और इमेजिनरी और जब भी कोई दो परिसर नंबर्स को एड करते तो दोनों के रियल पार्ट्स को हम एड कर देते हैं और दोनों के जो मैचआनरी पार्ट्स होते हैं उनको एड कर देते हैं तो यहां पे हमें क्लास क्रिएट कर सकते हैं परिसर ठीक है जहां पर बिल हैव तू पार्ट्स इन रियल और इमेजिनरी पार्ट ठीक तो यहां पर अगर हम दो वालुज पास कर रहे हैं इंटेक्स की वैल्यू चली जाएगी ऑपरेटर हम सबसे पहले रिटर्न टाइप जो है बताते हैं की ये जो भी हमारा ऑपरेटर है क्या रिटर्न कर रहा होगा वो हमें कोई परिसर नंबर ही रिटर्न कर रहा होगा ठीक है दें वे से ऑपरेटर प्लस विमांशन जो इन सभी ऑपरेटर हमें ओवरलोड करना है आर परिसर आर्गुमेंट सी तो यहां पर दिस इस ऑब्जेक्ट जहां पे C1 इसमें मैंने वन और तू पास कर दिया और यहां पर 3 पास कर दिया ठीक है और यहां पर यह जो फंक्शन डेफिनेशन क्या है डेट इस एन ऑब्जेक्ट ऑफ क्लास परिसर तो वो मैंने यहां पे पास कर दिया अब यहां पे जो ये प्लस ऑपरेटर है ये कैसे कम करना चाहिए सबसे पहले एक परिसर ऑब्जेक्ट बनाएंगे आंसर और आंसर की रियल पार्ट में हम डालेंगे दिस डॉट रियल प्लस सी डॉट रियल और आंसर के रियल में डालेंगे हम जो हमारा करंट रियल है प्लस सियाल है प्लस सी डॉट इमेज और आईएफ वे ट्री तो प्रिंट थिस C3 .रियल और सी थ्री डॉट इमेज होगा [संगीत] वह बताएंगे सिवान का रियल पार्ट ठीक है मेरे C2 का रियल पार्ट ठीक है C2 को मैं यहां पे पास करू तो इसको आप सी तू समझ सकते हैं जो यहां पे आर्गुमेंट में ए रहा है और ये जो रियल पार्ट है डेट वुड बी सी वन का रियल पार्ट ठीक है तो जब मैं यहां पे अब इसको ना ऐसे विजुलाइज कीजिए की अगर ये सपोज एड ऑपरेटर की जगह मैं डॉट ऑपरेटर कर रही होती ठीक है डॉट ऑपरेटर कर रही होती तो आई वुड हैव रिटन सी वन डॉट C2 तो यह C1 के लिए जो C1 मेरा ऑब्जेक्ट है उसे पर यह ऑपरेटर जो है वो कम करता और वहां पर C2 जो है वो आज एन आर्गुमेंट पास होता ठीक है तो ये मुझे भी शुरू में प्रॉब्लम आई थी विजुलाइज करने में तो मैंने उसको फिर ऐसे डॉट ऑपरेटर की उससे विजुलाइज किया था तो बिगन क्लियर बट इसको आप एक बार ही खुद लिख लेना ऑपरेटर ओवरलोडिंग को ट्राई ओवरलोडिंग सम अदर ऑपरेटर ऑन योर ऑन और उससे जो है आपको एकदम क्लियर हो जाएगा अभी के लिए हम आगे बढ़ते हैं तू रन टाइम पॉलीमोरफ़िज्म मैंने आपको बताया की देवर तू टाइप्स ऑफ पॉलीमर्ज्म कंपिल टाइम और टाइम रन टाइम पहले यूजिंग फंक्शन ओवरराइडिंग यूजिंग फंक्शन ओवरराइडिंग तब होती है फंक्शन ऑफ पैरंट क्लास ठीक पर एग्जांपल मेरे पास स्टाइल क्लास में भी है अब उन दोनों फंक्शंस में से कौन सा फंक्शन कल होगा आते रन टाइम डेट इस फंक्शन ओवर राइटिंग ठीक है और इसको कोड में अगर हम देखें तो सपोज आई हैव एन क्लास पैरंट जहां पर आई हैव तू फंक्शन पब्लिक पैरंट यहां पर सिमिलरली आई हैव से तू फंक्शन लेकिन डिफरेंस जो प्रिंट फंक्शन है उसको मैं यहां पर वर्चुअल बना दिया ठीक है सो वे हैव तू उसे डी वन वर्चुअल कीबोर्ड पर फंक्शन ओवरराइडिंग जहां पर हम चाहते हैं की रन टाइम पे डिसाइड हो की विच फंक्शन इस गेटिंग कल उसके लिए वे हैव तू मेक डेट फंक्शन ठीक है और वे कैन सी दिस एक एन एग्जांपल सपोज मैंने एक पेरेंट्स क्लास का ऑब्जेक्ट बनाया पी और एक चाइल्ड क्लास का ऑब्जेक्ट बनाया सी ठीक है तो रन टाइम पर ऐसे पीस और सी मतलब की रनटाइम पर मैंने ओवरराइड कर दिया अपने ऑब्जेक्ट वेरिएबल को ठीक है ठीक है तो अगर जी जी भी क्लास का पैरंट या सॉरी प्रिंटेड तो प्रिंट फंक्शन हमारा चाइल्ड क्लास जो है वो प्रिंट हो रहा है अभी क्यों हो रहा है इसको हमने असाइन कर दिया सी ऑब्जेक्ट ठीक है चाइल्ड क्लास का ऑब्जेक्ट तो नो यहां पर जो प्रिंट और शो जो हमने कोयल किया है फंक्शन यहां पे चाइल्ड क्लास प्रिंट होना चाहिए है ना क्योंकि हमने रन टाइम पे इसको साइन कर दिया चाइल्ड क्लास बट प्रिंट फंक्शन के लिए सिर्फ चाइल्ड क्लास कल हो रहा है शो फंक्शन के लिए नहीं ये इसलिए क्योंकि शो फंक्शन अगर आप देखेंगे यहां पे शो फंक्शन जो है वो हमने वर्चुअल फंक्शन नहीं डिफाइन के लिए फंक्शन ओवरराइडिंग नहीं होगी जो फंक्शन ओवरराइडिंग होगी वो सिर्फ प्रिंट फंक्शन के लिए होगी अगर आपको फंक्शन ओवरराइडिंग करनी है तो उसके लिए आपको पैरंट क्लास में जो फंक्शन नाम है उसके पहले वर्चुअल कीबोर्ड उसे करना पड़ेगा ठीक है सो दिस इस व्हाट वर्चुअल फंक्शंस आर वेयर और हो दे आर यूज्ड इन फंक्शन ओवर आईटी अब हमने देखा कंपिल टाइम और रन टाइम पॉलीमरिज्म इनके बीच में अगर हम डिफरेंस देखें तो हमें पता है कंपिल टाइम पॉलीमोरफ़िज्म अकड़ कंपिल टाइम और जो हमारा रनटाइम पॉलीमोरफ़िज्म है डेट कर्स आते रन टाइम कंपिल टाइम पहले मोरफ़िज्म इसे अचीव्ड थ्रू फंक्शन ओवरलोडिंग फंक्शन ओवरलोडिंग और ऑपरेटर ओवरलोडिंग और रनटाइम पॉलीमोरफ़िज्म होती है डेट इसे अचीव्ड थ्रू फंक्शन ओवरराइडिंग कंपिल टाइम पॉलीमोरफ़िज्म नाम शुड बी से बट पैरामीटर कैन बी डिफरेंट पैरामीटर पेरेंट्स बोथ शुड बी से कंपिल टाइम मोरफ़िज्म हज फास्टर एग्जीक्यूशन टाइम टाइम पॉलीमोरफ़िज्म इस कंपेरटिवली स्लोअर कंपिल टाइम पॉलीमोरफ़िज्म इस अलसो मोर मेमोरी एफिशिएंट और रन टाइम पॉलीमोरफ़िज्म इस लेस कंपैरिजन विच इस फ्रेंड फंक्शन तो फ्रेंड फंक्शन जो है इंटरेस्टिंग टॉपिक इन उप्स फ्रेंड्स फंक्शंस इसे नॉन मेंबर फंक्शन आईटी इस एन नॉन मेंबर फंक्शन विच कैन एक्सेस विच कैन एक्सेस प्राइवेट मेंबर्स अब तक क्लास पर एग्जांपल मैंने क्लास बनाई ठीक है एबल तू एक्सेस डी डाटा मेंबर ऑफ डी मेथड ऑफ दिस क्लास ए तो उसके लिए आई कैन मेक दिस फंक्शन एक डी फ्रेंड फंक्शन ऑफ दिस पर्टिकुलर क्लास और हो कैन आई डू डेट आई कैन जस्ट मेंशन मेरी क्लास में डेट दिस फंक्शन इसे एन फ्रेंड फंक्शन बिल बी एबल तू एक्सेस जो ऑफ दी प्राइवेट मेंबर्स ऑफ दिस क्लासिंग और ऑब्जेक्ट का क्लास 8 तो दिस फंक्शन सोल्ड बी एबल तू प्रिंट एक्स वैल्यू क्लास का ऑब्जेक्ट और में डायरेक्टली प्रिंट करूं ऑब्जेक्ट क्योंकि अभी जो है एक्स जो है वो प्राइवेट मेंबर है ऑफ दिस क्लास ए तो आई कैन मेक दिस प्रिंट फंक्शन स एन फ्रेंड फंक्शन और जो यहां पे बस मेरा जो फंक्शन है उसकी डेफिनेशन और है तू प्रोवाइड प्रिंट और वॅटीवर डी पैरामिलेेस्ट्स तो अब अगर हम अभी डायरेक्टली जो है डेट बिल गिव स एन एरर की दिस इस एन प्राइवेट मेंबर लेकिन अगर हम प्रिंट फंक्शन के थ्रू करें प्रिंट ऑब्जेक्ट तो यहां पर गेटिंग सम्राट [संगीत] ठीक है फ्रेंड ऑफ फंक्शन ऑफ क्लास ए आईटी इस एबल तू एक्सिस दिस प्राइवेट मेंबर्स ठीक है दिस फंक्शन ये जो फ्रेंड फंक्शन भी हो सकता है और दिस कैन अलसो बी एन फंक्शन ऑफ अंदर क्लास ही हो सकता है किसी और क्लास का फंक्शन जो है मैं चाहती हूं की सिर्फ वो फंक्शन जो है मेरे इस क्लास के डाटा मेंबर्स को एक्सेस कर पे बट आई डोंट वांट तू मेक आईटी एन चाइल्ड क्लास और अपेरेंट ग्लास तो उसे कैसे में आइडिया फंक्शन का कॉन्सेप्ट ठीक है और डेट इस जो पर टुडे क्लास हमने आज बहुत कुछ कर कर लिया है स्टार्टिंग फ्रॉम एन व्हाट और वही इस यूपीएस क्लासेस ऑब्जेक्ट्स और कैप्सूल एब्स्ट्रेक्शन इन्हेरिटेंस और दें पॉलीमर अब तो आई होप की आज के लेक्चर में आपके सारे जो उप्स के फंडामेंटल्स हैं जो की आपको सी प्लस प्लस में रिक्वायर्ड है वो क्लियर हो गए होंगे क्योंकि यह हम आगे के लेक्चरर्स में उसे करेंगे नेक्स्ट लेक्चर में ही जो हमारा लिंक लिस्ट में होने वाला है इस में हम क्लासेस और ऑब्जेक्ट्स का उसे कर रहे होंगे तो उससे पहले आपको ये जो है बिल्कुल अच्छे से क्लियर होना चाहिए इस वीडियो को चाहे आप एक बड़ी और देख लेने और जो भी क्वेश्चंस उसमें करवाएं हैं जो भी कोडिंग पार्ट किया है उसको खुद भी करके देखना फंक्शन ओवर लोडिंग और ऑपरेटर ओवरलोडिंग यह दोनों चीज जरूर खुद इंप्लीमेंट करके देखना ठीक है थैंक यू सो मैच पर वाचिंग दिस वीडियो आई बिल सीन डी नेक्स्ट वन तब तक के लिए टेक केयर और गुड बाय [संगीत]