C # C ++ प्रोग्रामिंग लैंग्वेज पर आधारित है। इसलिए, C # प्रोग्रामिंग भाषा में कक्षाओं और वस्तुओं के लिए अंतर्निहित समर्थन है। एक वर्ग कुछ भी नहीं है लेकिन गुणों और विधियों का एक एनकैप्सुलेशन है जो एक वास्तविक समय इकाई का प्रतिनिधित्व करने के लिए उपयोग किया जाता है।
उदाहरण के लिए, यदि आप किसी विशेष एप्लिकेशन में कर्मचारी के डेटा के साथ काम करना चाहते हैं।
कर्मचारी के गुण कर्मचारी की आईडी और नाम होंगे। विधियों में कर्मचारी डेटा की प्रविष्टि और संशोधन शामिल होगा।
इन सभी कार्यों को C # में एक वर्ग के रूप में दर्शाया जा सकता है। इस अध्याय में, हम देखेंगे कि हम C # में कक्षाओं और वस्तुओं के साथ और अधिक विस्तार से कैसे काम कर सकते हैं।
इस ट्यूटोरियल में, आप सीखेंगे-
- कक्षा और वस्तु क्या है?
- क्लास और ऑब्जेक्ट कैसे बनाएं
- फ़ील्ड और विधियाँ
कक्षा और वस्तु क्या है?
चलिए पहले कक्षाओं से शुरू करते हैं।
जैसा कि हमने पहले चर्चा की है कि कक्षाएं डेटा संपत्तियों और डेटा विधियों का एक संक्षिप्तिकरण हैं ।
- गुणों का उपयोग उस डेटा का वर्णन करने के लिए किया जाता है जिसे वर्ग धारण करेगा।
- विधियां बताती हैं कि वे कौन से ऑपरेशन हैं जो डेटा पर किए जा सकते हैं।
कक्षा और वस्तुओं की बेहतर समझ प्राप्त करने के लिए, आइए नीचे एक उदाहरण देखें कि कक्षा कैसी दिखती है।
वर्ग का नाम "ट्यूटोरियल" है। वर्ग में निम्नलिखित गुण हैं
- ट्यूटोरियल आईडी - इसका उपयोग एक अद्वितीय संख्या को संग्रहीत करने के लिए किया जाएगा जो ट्यूटोरियल का प्रतिनिधित्व करेगा।
- ट्यूटोरियल नाम - इसका उपयोग ट्यूटोरियल के नाम को स्ट्रिंग के रूप में संग्रहीत करने के लिए किया जाएगा।
एक वर्ग भी विधियों में शामिल है। हमारी कक्षा के निम्नलिखित तरीके हैं,
- SetTutorial - इस विधि का उपयोग आईडी और ट्यूटोरियल के नाम को सेट करने के लिए किया जाएगा। इसलिए, उदाहरण के लिए, यदि हम .Net के लिए एक ट्यूटोरियल बनाना चाहते हैं, तो हम इसके लिए एक ऑब्जेक्ट बना सकते हैं। ऑब्जेक्ट की मानें कि आइडी 1 होगी। दूसरा, हम ट्यूटोरियल के नाम के रूप में ".Net" का एक नाम निर्दिष्ट करेंगे। 1 का आईडी मान और ".Net" का नाम ऑब्जेक्ट की संपत्ति के रूप में संग्रहीत किया जाएगा।
- GetTutorial - इस विधि का उपयोग किसी विशिष्ट ट्यूटोरियल का विवरण प्राप्त करने के लिए किया जाएगा। इसलिए यदि हम ट्यूटोरियल का नाम प्राप्त करना चाहते हैं, तो यह विधि स्ट्रिंग ".Net" लौटा देगी।
नीचे एक ट्यूटोरियल है कि कोई वस्तु हमारे ट्यूटोरियल वर्ग के लिए कैसी दिख सकती है। हमारे पास 3 ऑब्जेक्ट्स हैं, जिनमें से प्रत्येक का अपना संबंधित ट्यूटोरियलआईडी और ट्यूटोरियलनेम है।
क्लास और ऑब्जेक्ट कैसे बनाएं
आइए अब हमारी कक्षा बनाने के लिए Visual Studio में गोता लगाएँ। हम अपने मौजूदा कंसोल एप्लिकेशन को बनाने जा रहे हैं जो हमारे पहले अध्याय में बनाया गया था। हम अपने वर्तमान एप्लिकेशन के लिए विजुअल स्टूडियो में एक क्लास बनाएंगे।
इस उदाहरण को प्राप्त करने के लिए नीचे दिए गए चरणों का पालन करें।
चरण 1) पहले चरण में हमारे मौजूदा एप्लिकेशन के भीतर एक नए वर्ग का निर्माण शामिल है। यह Visual Studio की सहायता से किया जाता है।
- पहला कदम समाधान पर दाईं ओर क्लिक करने के लिए है, जो हमारे मामले में 'डेमोएप्लीकेशन' है। यह विकल्पों की सूची के साथ एक संदर्भ मेनू लाएगा।
- संदर्भ मेनू से विकल्प-> वर्ग चुनें। यह मौजूदा परियोजना में एक वर्ग जोड़ने का विकल्प प्रदान करेगा।
चरण 2) अगला चरण वर्ग के लिए एक नाम प्रदान करना और इसे हमारे समाधान में जोड़ना है।
- प्रोजेक्ट डायलॉग बॉक्स में, हमें सबसे पहले अपनी कक्षा के लिए एक नाम देना होगा। आइए हमारी कक्षा के लिए Tutorial.cs का नाम प्रदान करें। ध्यान दें कि फ़ाइल का नाम .cs के साथ समाप्त होना चाहिए यह सुनिश्चित करने के लिए कि इसे एक उचित वर्ग फ़ाइल के रूप में माना जाता है।
- जब हम ऐड बटन पर क्लिक करते हैं, तो क्लास को हमारे समाधान में जोड़ा जाएगा।
यदि उपरोक्त चरणों का पालन किया जाता है, तो आपको विज़ुअल स्टूडियो में नीचे आउटपुट मिलेगा।
आउटपुट: -
Tutorial.cs नामक एक वर्ग समाधान में जोड़ा जाएगा। यदि आप फ़ाइल खोलते हैं, तो आपको क्लास फ़ाइल में जोड़ा गया कोड मिलेगा।
कोड स्पष्टीकरण: -
- पहले भाग में अनिवार्य मॉड्यूल हैं जो Visual Studio किसी भी .Net फ़ाइल में जोड़ता है। किसी भी .Net प्रोग्राम को Windows वातावरण में चलाना सुनिश्चित करने के लिए इन मॉड्यूल की हमेशा आवश्यकता होती है।
- दूसरा भाग वह वर्ग है जो फ़ाइल में जोड़ा जाता है। हमारे मामले में कक्षा का नाम 'ट्यूटोरियल' है। यह वह नाम है जो समाधान के साथ वर्ग में निर्दिष्ट किया गया था।
फिलहाल, हमारी क्लास फाइल कुछ नहीं करती है। निम्नलिखित विषयों में, हम कक्षा के साथ काम करने के तरीके के बारे में अधिक जानकारी देखेंगे।
फ़ील्ड और विधियाँ
हमने पहले ही देखा है कि पहले के विषय में कक्षाओं में फ़ील्ड और तरीकों को कैसे परिभाषित किया जाता है।
हमारे ट्यूटोरियल वर्ग के लिए, हमारे पास निम्नलिखित गुण हो सकते हैं।
- ट्यूटोरियल आईडी - इसका उपयोग एक अद्वितीय संख्या को संग्रहीत करने के लिए किया जाएगा जो ट्यूटोरियल का प्रतिनिधित्व करेगा।
- ट्यूटोरियल नाम - इसका उपयोग ट्यूटोरियल के नाम को स्ट्रिंग के रूप में संग्रहीत करने के लिए किया जाएगा।
हमारे ट्यूटोरियल क्लास में नीचे बताए गए तरीके भी हो सकते हैं।
- SetTutorial - इस विधि का उपयोग आईडी और ट्यूटोरियल के नाम को सेट करने के लिए किया जाएगा।
- GetTutorial - इस विधि का उपयोग किसी विशिष्ट ट्यूटोरियल का विवरण प्राप्त करने के लिए किया जाएगा।
आइए अब देखें कि हम अपने कोड में फ़ील्ड्स और विधियों को कैसे शामिल कर सकते हैं।
चरण 1) पहला चरण यह सुनिश्चित करना है कि ट्यूटोरियल क्लास में सही फ़ील्ड और परिभाषित तरीके हैं। इस चरण में, हम नीचे दिए गए कोड को Tutorial.cs फ़ाइल में जोड़ते हैं।
कोड स्पष्टीकरण: -
- पहले चरण में TutorialID और TutorialName को फ़ील्ड फ़ाइल में जोड़ना है। चूंकि TutorialID फ़ील्ड एक संख्या होगी, हम इसे एक पूर्णांक के रूप में परिभाषित करते हैं, जबकि TutorialName को एक स्ट्रिंग के रूप में परिभाषित किया जाएगा।
- अगला, हम सेटटाइपर विधि को परिभाषित करते हैं। यह विधि 2 मापदंडों को स्वीकार करती है। इसलिए यदि Program.cs SetTutorial विधि को कॉल करता है, तो इसे इन मापदंडों को मान प्रदान करना होगा। ये मान ट्यूटोरियल ऑब्जेक्ट के क्षेत्र को सेट करने के लिए उपयोग किए जाएंगे।
नोट : चलिए एक उदाहरण लेते हैं और मान लेते हैं कि हमारी Program.cs फ़ाइल मापदंडों को "1" और ".Net" के साथ सेट करती है। नीचे दिए गए चरणों को इसके परिणामस्वरूप निष्पादित किया जाएगा,
- पीआईडी का मान 1 हो जाएगा
- PName का मान .Net होगा।
- SetTutorial विधि में, इन मानों को तब TutorialID और TutorialName में पास किया जाएगा।
- तो अब TutorialID का मान 1 होगा और TutorialName का मान ".Net" होगा।
- यहां हम ट्यूटोरियल क्लास के फील्ड को उसी के अनुसार मापदंडों पर सेट करते हैं। तो हम PID के लिए TutorialID और PID के लिए TutorialName सेट करते हैं।
- हम तब "स्ट्रिंग" प्रकार के मूल्य को वापस करने के लिए GetTutorial विधि को परिभाषित करते हैं। इस विधि का उपयोग ट्यूटोरियलनाम को कॉलिंग प्रोग्राम में वापस करने के लिए किया जाएगा। इसी तरह, आप ट्यूटोरियल आईडी को GetTutorial मे विधि के साथ भी प्राप्त कर सकते हैं
- यहां हम कॉलिंग प्रोग्राम में TutorialName फ़ील्ड का मान लौटाते हैं।
चरण 2) अब हमारे Program.cs में कोड जोड़ें, जो कि हमारा कंसोल एप्लिकेशन है। कंसोल एप्लिकेशन का उपयोग "ट्यूटोरियल क्लास" का ऑब्जेक्ट बनाने के लिए किया जाएगा और सेटटाइपर और गेटटाइपर्स विधियों को तदनुसार कॉल किया जाएगा।
( नोट : - एक वस्तु किसी भी समय एक वर्ग का एक उदाहरण है। एक वर्ग और एक वस्तु के बीच का अंतर यह है कि वस्तु में गुणों के लिए मान शामिल हैं।)
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace DemoApplication{class Tutorial{int TutorialID;string TutorialName;public void SetTutorial(int pID,string pName){TutorialID=pID;TutorialName=pName;}public String GetTutorial(){return TutorialName;}static void Main(string[] args){Tutorial pTutor=new Tutorial();pTutor.SetTutorial(1,".Net");Console.WriteLine(pTutor.GetTutorial());Console.ReadKey();}}}
कोड स्पष्टीकरण: -
- ट्यूटोरियल क्लास के लिए ऑब्जेक्ट बनाने के लिए पहला कदम है। यहां पर मार्क करें कि यह 'new' कीवर्ड का उपयोग करके किया गया है। C # में क्लास से ऑब्जेक्ट बनाने के लिए 'new' कीवर्ड का उपयोग किया जाता है। तब ऑब्जेक्ट को पॉट्यूटर वेरिएबल को सौंपा गया है।
- SetTutorial विधि फिर कहा जाता है। 1 और ".Net" के पैरामीटर सेटटाइपर विधि से पास किए जाते हैं। इसके बाद वर्ग के "TutorialID" और "TutorialName" फ़ील्ड को तदनुसार सेट करने के लिए उपयोग किया जाएगा।
- हम तब TutorialName प्राप्त करने के लिए ट्यूटोरियल क्लास के गेटटाइपर विधि का उपयोग करते हैं। इसके बाद कंसोल को कंसोल के माध्यम से प्रदर्शित किया जाता है। लाइट विधि।
यदि उपरोक्त कोड ठीक से दर्ज किया गया है और प्रोग्राम चलाया जाता है तो निम्न आउटपुट प्रदर्शित किया जाएगा।
आउटपुट:
आउटपुट से, आप स्पष्ट रूप से देख सकते हैं कि स्ट्रिंग ".Net" GetTutorial विधि द्वारा वापस आ गया था।
सारांश
- वर्ग डेटा गुणों और विधियों का एक एनकैप्सुलेशन है। गुणों का उपयोग कक्षा में डेटा के प्रकार को परिभाषित करने के लिए किया जाता है। विधियाँ उन परिचालनों को परिभाषित करती हैं जो डेटा पर किए जा सकते हैं।