C# क्लास और ऑब्जेक्ट ट्यूटोरियल उदाहरणों के साथ
C# किस पर आधारित है? C++ प्रोग्रामिंग भाषा। इसलिए, C# प्रोग्रामिंग भाषा में क्लास और ऑब्जेक्ट के लिए इन-बिल्ट सपोर्ट है। क्लास कुछ और नहीं बल्कि प्रॉपर्टी और मेथड्स का एक एनकैप्सुलेशन है जिसका उपयोग वास्तविक समय की इकाई का प्रतिनिधित्व करने के लिए किया जाता है।
उदाहरण के लिए, यदि आप किसी विशेष एप्लिकेशन में कर्मचारी के डेटा के साथ काम करना चाहते हैं।
कर्मचारी की विशेषताओं में कर्मचारी की आईडी और नाम शामिल होंगे। इन विधियों में कर्मचारी डेटा की प्रविष्टि और संशोधन शामिल होंगे।
इन सभी ऑपरेशनों को C# में क्लास के रूप में दर्शाया जा सकता है। इस अध्याय में, हम देखेंगे कि हम C# में क्लास और ऑब्जेक्ट के साथ और अधिक विस्तार से कैसे काम कर सकते हैं।
क्लास और ऑब्जेक्ट क्या है?
आइये सबसे पहले कक्षाओं से शुरुआत करें।
जैसा कि हमने पहले चर्चा की थी, कक्षाएं एक संक्षेपण हैं डेटा गुण और डेटा विधियाँ.
- गुणों का उपयोग उस डेटा का वर्णन करने के लिए किया जाता है जिसे क्लास धारण करेगा।
- ये विधियां बताती हैं कि डेटा पर कौन से ऑपरेशन किए जा सकते हैं।
क्लास और ऑब्जेक्ट्स को बेहतर ढंग से समझने के लिए, आइए नीचे दिए गए उदाहरण पर नजर डालें कि क्लास कैसा दिखेगा।
क्लास का नाम “ट्यूटोरियल” है। क्लास में निम्नलिखित गुण हैं
- ट्यूटोरियल आईडी - इसका उपयोग एक अद्वितीय संख्या को संग्रहीत करने के लिए किया जाएगा जो ट्यूटोरियल का प्रतिनिधित्व करेगा।
- ट्यूटोरियल का नाम - इसका उपयोग ट्यूटोरियल के नाम को स्ट्रिंग के रूप में संग्रहीत करने के लिए किया जाएगा।
एक क्लास में विधियाँ भी शामिल होती हैं। हमारी क्लास में निम्नलिखित विधियाँ हैं,
- सेटट्यूटोरियल - इस विधि का उपयोग ट्यूटोरियल की आईडी और नाम सेट करने के लिए किया जाएगा। उदाहरण के लिए, यदि हम .Net के लिए एक ट्यूटोरियल बनाना चाहते हैं, तो हम इसके लिए एक ऑब्जेक्ट बना सकते हैं। ऑब्जेक्ट की आईडी 1 होगी। दूसरे, हम ट्यूटोरियल के नाम के रूप में ".Net" नाम निर्दिष्ट करेंगे। 1 का आईडी मान और ".Net" का नाम ऑब्जेक्ट की प्रॉपर्टी के रूप में संग्रहीत किया जाएगा।
- ट्यूटोरियल प्राप्त करें - इस विधि का उपयोग किसी विशिष्ट ट्यूटोरियल का विवरण प्राप्त करने के लिए किया जाएगा। इसलिए यदि हम ट्यूटोरियल का नाम प्राप्त करना चाहते हैं, तो यह विधि स्ट्रिंग “.Net” लौटाएगी।
नीचे एक स्नैपशॉट है कि हमारे ट्यूटोरियल क्लास के लिए एक ऑब्जेक्ट कैसा दिख सकता है। हमारे पास 3 ऑब्जेक्ट हैं, जिनमें से प्रत्येक का अपना अलग ट्यूटोरियलआईडी और ट्यूटोरियलनाम है।
क्लास और ऑब्जेक्ट कैसे बनाएं
आइये अब इस विषय पर विस्तार से चर्चा करें विजुअल स्टूडियो अपना क्लास बनाने के लिए। हम अपने मौजूदा कंसोल एप्लिकेशन पर निर्माण करने जा रहे हैं जिसे हमारे पिछले अध्याय में बनाया गया था। हम अपने वर्तमान एप्लिकेशन के लिए Visual Studio में एक क्लास बनाएंगे।
आइए इस उदाहरण को लागू करने के लिए नीचे दिए गए चरणों का पालन करें।
चरण 1) पहले चरण में हमारे मौजूदा एप्लिकेशन के भीतर एक नया क्लास बनाना शामिल है। यह Visual Studio की मदद से किया जाता है।
- पहला कदम समाधान पर राइट क्लिक करना है, जो हमारे मामले में 'डेमोएप्लिकेशन' है। यह विकल्पों की एक सूची के साथ एक संदर्भ मेनू लाएगा।
- संदर्भ मेनू से Add->Class विकल्प चुनें। यह मौजूदा प्रोजेक्ट में क्लास जोड़ने का विकल्प प्रदान करेगा।
चरण 2) अगला चरण क्लास के लिए एक नाम प्रदान करना और उसे हमारे समाधान में जोड़ना है।
- प्रोजेक्ट डायलॉग बॉक्स में, हमें सबसे पहले अपने क्लास के लिए एक नाम देना होगा। चलिए अपने क्लास के लिए Tutorial.cs नाम देते हैं। ध्यान दें कि फ़ाइल नाम का अंत .cs से होना चाहिए ताकि यह सुनिश्चित हो सके कि इसे एक उचित क्लास फ़ाइल के रूप में माना जाए।
- जब हम Add बटन पर क्लिक करेंगे तो क्लास हमारे समाधान में जुड़ जाएगी।
यदि उपरोक्त चरणों का पालन किया जाए तो आपको विजुअल स्टूडियो में नीचे दिया गया आउटपुट मिलेगा।
आउटपुट: -
समाधान में Tutorial.cs नामक एक क्लास जोड़ी जाएगी। यदि आप फ़ाइल खोलेंगे, तो आपको क्लास फ़ाइल में नीचे दिया गया कोड मिलेगा।
Code स्पष्टीकरण: -
- पहले भाग में अनिवार्य मॉड्यूल शामिल हैं जिन्हें Visual Studio किसी भी .Net फ़ाइल में जोड़ता है। किसी भी .Net प्रोग्राम को चलाने के लिए इन मॉड्यूल की हमेशा आवश्यकता होती है Windows पर्यावरण.
- दूसरा भाग क्लास है जिसे फ़ाइल में जोड़ा जाता है। हमारे मामले में क्लास का नाम 'ट्यूटोरियल' है। यह वह नाम है जिसे क्लास के साथ निर्दिष्ट किया गया था जिसे समाधान में जोड़ा गया था।
फिलहाल, हमारी क्लास फ़ाइल कुछ भी नहीं करती है। अगले विषयों में, हम क्लास के साथ काम करने के तरीके के बारे में अधिक जानकारी देखेंगे।
क्षेत्र और विधियाँ
हम पहले ही देख चुके हैं कि कक्षाओं में फ़ील्ड और विधियों को कैसे परिभाषित किया जाता है।
हमारे ट्यूटोरियल क्लास के लिए, हमारे पास निम्नलिखित गुण हो सकते हैं।
- ट्यूटोरियल आईडी - इसका उपयोग एक अद्वितीय संख्या संग्रहीत करने के लिए किया जाएगा जो ट्यूटोरियल का प्रतिनिधित्व करेगा।
- ट्यूटोरियल नाम - इसका उपयोग ट्यूटोरियल के नाम को संग्रहीत करने के लिए किया जाएगा स्ट्रिंग.
हमारी ट्यूटोरियल क्लास में नीचे उल्लिखित विधियाँ भी हो सकती हैं।
- SetTutorial - इस विधि का उपयोग ट्यूटोरियल की आईडी और नाम सेट करने के लिए किया जाएगा।
- GetTutorial - इस विधि का उपयोग किसी विशिष्ट ट्यूटोरियल का विवरण प्राप्त करने के लिए किया जाएगा।
आइए अब देखें कि हम अपने कोड में फ़ील्ड्स और विधियों को कैसे शामिल कर सकते हैं।
चरण 1) पहला कदम यह सुनिश्चित करना है कि ट्यूटोरियल क्लास में सही फ़ील्ड और विधियाँ परिभाषित हैं। इस चरण में, हम नीचे दिए गए कोड को Tutorial.cs फ़ाइल में जोड़ते हैं।
Code स्पष्टीकरण: -
- पहला कदम ट्यूटोरियलआईडी और ट्यूटोरियलनाम के फ़ील्ड को क्लास फ़ाइल में जोड़ना है। चूंकि ट्यूटोरियलआईडी फ़ील्ड एक संख्या होगी, इसलिए हम इसे एक पूर्णांक के रूप में परिभाषित करते हैं, जबकि ट्यूटोरियलनाम को एक स्ट्रिंग के रूप में परिभाषित किया जाएगा।
- इसके बाद, हम SetTutorial विधि को परिभाषित करते हैं। यह विधि 2 पैरामीटर स्वीकार करती है। इसलिए यदि Program.cs SetTutorial विधि को कॉल करता है, तो उसे इन पैरामीटर के लिए मान प्रदान करने की आवश्यकता होगी। इन मानों का उपयोग ट्यूटोरियल ऑब्जेक्ट के फ़ील्ड सेट करने के लिए किया जाएगा।
- pID का मान 1 हो जाएगा
- pName का मान .Net होगा.
- SetTutorial विधि में, ये मान TutorialID और TutorialName को पास कर दिए जाएंगे।
- तो अब TutorialID का मान 1 होगा और TutorialName का मान “.Net” होगा।
- यहाँ हम ट्यूटोरियल क्लास के फ़ील्ड को पैरामीटर के अनुसार सेट करते हैं। इसलिए हमने ट्यूटोरियलआईडी को pID और ट्यूटोरियलनाम को Pname पर सेट किया है।
- फिर हम “String” प्रकार का मान लौटाने के लिए GetTutorial विधि को परिभाषित करते हैं। इस विधि का उपयोग कॉलिंग प्रोग्राम को TutorialName लौटाने के लिए किया जाएगा। इसी तरह, आप Int GetTutorial विधि से भी ट्यूटोरियल आईडी प्राप्त कर सकते हैं
- यहां हम कॉलिंग प्रोग्राम को TutorialName फ़ील्ड का मान लौटाते हैं।
नोट: चलिए एक उदाहरण लेते हैं और मान लेते हैं कि हमारी Program.cs फ़ाइल SetTutorial को “1” और “.Net” पैरामीटर के साथ कॉल करती है। इसके परिणामस्वरूप नीचे दिए गए चरण निष्पादित किए जाएँगे,
चरण 2) अब चलिए अपने Program.cs में कोड जोड़ते हैं, जो हमारा कंसोल एप्लीकेशन है। कंसोल एप्लीकेशन का उपयोग “ट्यूटोरियल क्लास” का ऑब्जेक्ट बनाने और उसके अनुसार SetTutorial और GetTutorial विधियों को कॉल करने के लिए किया जाएगा।
(नोट:- किसी भी समय ऑब्जेक्ट क्लास का एक उदाहरण होता है। क्लास और ऑब्जेक्ट के बीच अंतर यह है कि ऑब्जेक्ट में गुणों के लिए मान होते हैं।)
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();
}
}
}
Code स्पष्टीकरण: -
- पहला चरण ट्यूटोरियल क्लास के लिए ऑब्जेक्ट बनाना है। यहाँ ध्यान दें कि यह 'new' कीवर्ड का उपयोग करके किया जाता है। 'new' कीवर्ड का उपयोग C# में क्लास से ऑब्जेक्ट बनाने के लिए किया जाता है। फिर ऑब्जेक्ट को pTutor को असाइन किया जाता है परिवर्तनशील.
- फिर SetTutorial विधि को कॉल किया जाता है। 1 और “.Net” के पैरामीटर SetTutorial विधि को पास किए जाते हैं। फिर इनका उपयोग क्लास के “TutorialID” और “TutorialName” फ़ील्ड को तदनुसार सेट करने के लिए किया जाएगा।
- फिर हम TutorialName प्राप्त करने के लिए Tutorial क्लास की GetTutorial विधि का उपयोग करते हैं। फिर इसे Console.WriteLine विधि के माध्यम से कंसोल पर प्रदर्शित किया जाता है।
यदि उपरोक्त कोड ठीक से दर्ज किया गया है और प्रोग्राम चलाया गया है तो निम्नलिखित आउटपुट प्रदर्शित होगा।
आउटपुट:
आउटपुट से, आप स्पष्ट रूप से देख सकते हैं कि स्ट्रिंग “.Net” GetTutorial विधि द्वारा लौटाई गई थी।
सारांश
- क्लास डेटा प्रॉपर्टीज और मेथड्स का एक एनकैप्सुलेशन है। क्लास में डेटा के प्रकार को परिभाषित करने के लिए प्रॉपर्टीज का उपयोग किया जाता है। मेथड्स उन ऑपरेशन्स को परिभाषित करते हैं जो डेटा पर किए जा सकते हैं।









