हेल्लो दोस्तों आज के इस पोस्ट में आपको c# classes in hindi के बारे में आपको बताया जा रहा है की क्या होता है कैसे काम करता है तो चलिए शुरू करते है
Contents
C# classes का परिचय
एक क्लास(class) एक framework होती है जिसके द्वारा आप अपना custom type को डिफाइन करते है की class के द्वारा डिफाइन किया गया custom type composite होता है यानी आप इसे कई अलग अलग type के variables ,properties ,methods और events के संयुक्त मिश्रण से बनाया जाता है
class एक blueprint होती है जिसमे data(variables,properties) और उसका behaviour(methods,events) को डिफाइन किया जाता है class को डिफाइन करने के बाद उसके ऑब्जेक्ट को क्रिएट किये जाते है जिस प्रकार आप normal type जैसे की int ,float आदि के variables को क्रिएट करते है उसी तरह class type के भी variables को क्रिएट किये जाते है जिन्हें objects कहा जाता है
यदि आसन भाषा में कहा जाये तो आप किसी मकान के नक़्शे की तरह होती है जिसके आधार पर कई मकान(objects) बनाय जा सकते है एक object class के आधार पर बनायीं गयी concrete(real) entity होती है जबकि class जैसा की मैंने पहले कहा सिर्फ एक framework या नक्शा होती है
class के मध्यम से आप कई अलग अलग variables के properties ,methods और events को एक ही नाम से (object) के द्वारा handle कर पाते है इससे आप data के बिखराव से बच जाते है
example के लिए आप किसी organization में sales से सम्बन्धित data को एक class बनाकर उसमे manage कर सकते है और production से related data को एक दूसरी class में बनाकर उसमे manage कर सकते है
class के अन्दर आप डिफाइन किये गए सभी variables ,properties,methods और events class members कहलाते है इसके क्रमश : members variables ,member properties ,member methods और member को events कहा जाता है
यदि class को static डिफाइन किया जाता है to ऐसी class के objects को नहीं क्रिएट किये जा सकते है और उसके members को सिर्फ class के नाम के द्वारा ही एक्सेस किया जा सकता है ऐसा करने के लिए मेमोरी में class की एक ही copy को क्रिएट होती है
जब class non-static होती है तो उसके objects को क्रिएट करके आप उसकी मेमोरी में कई copies को क्रिएट कर सकते है जब तक कोई objects का प्रयोग किया जाता है तो तब तक वह copy मेमोरी में होती है इसके बाद उसके garbage collection को enable कर दिया जाता है
classes object oriented programming का बहुत ही important concept होता है जो आपको data centric को approach provide करती है classes inheritance को भी सपोर्ट करता है
declaring c# classes
classes को class keyword के द्वारा भी डिफाइन किया जाता है c# में class को क्रिएट करने का general syntax आपको निचे दिया जा रहा है
access-modifier class-keyword class-name { //variables,properties,methods and events code here... }
जैसा की आप उपर दिया गए syntax में देख सकते है की class keyword से पहले एक्सेस modifier को डिफाइन किया जाता है एक्सेस modifier को डिफाइन किया जाता है एक्सेस modifier के द्वारा किसी भी class का एक्सेस level को डिफाइन किया जाता है
class keyword के बाद class का नाम को डिफाइन किया जाता है class का नाम पुरे प्रोग्राम में unique होना चाहिए
इसके बाद curly brackets में class की body आती है जो variables ,properties आदि से मिलकर बनी होती है
creating object of c# classes
objects को new keyword के द्वारा क्रिएट किया जाता है c# में classes के object को क्रिएट करने का general syntax आपको निचे दिया जा रहा है
class-name object-name=new-keyword class-name();
सबसे पहले आप उस class का नाम लिखते है जिसका object आप क्रिएट करना चाहते है इसके बाद आप एक unique object को नाम लिखते है इसके बाद assignment operator लगकर new keyword को डिफाइन करते है इसके बाद वापस class का नाम लिखते जाता है और brackets को डिफाइन भी किये जाते है
brackets में मुख्यत: arguments को pass किये जाते है जो constructors के द्वारा members को assign किये जाते है constructors के बारे में आपके details से जानकारी किया जा रहा है
उपर दिए गए syntax से एक complete object को क्रिएट होता है आप चाहे तो सिर्फ object का reference भी क्रिएट कर सकते है इसके लिए आप syntax निचे दिया जा रहा है
class-name object-name;
एक object को reference real object को क्रिएट करते है और मेमोरी में भी किसी location को point नहीं करता है इस तरह के objects को आप उसी class के दुसरे real objects को assign कर सकते है
accessing class members
जैसा की मैंने आपको पहले ही बताया की class में डिफाइन किये गए variables,properties ,events और methods उसके members कहलाते है class के members को आप दो प्रकार से प्रयोग कर सकते है
यदि class के members को आप class के अन्दर ही एक्सेस कर रहे है तो इसके लिए आप this keyword का प्रयोग करते है this keyword current class के object की तरह ही work करता है इसका syntax आपको निचे दिया जा रहा है
class class-name { //class-members //this-keyword.class-member-name; static void Main(string[] args) { } }
लेकिन this keyword को Main() मेथड के अन्दर work नहीं करता है इसलिए आप यदि class के members को उसी class के Main() method में access कर रहे है तो इसके लिए आप आपको Main() method में उस class कका object को क्रिएट करना होगा केवल तब ही जब आप उसके members को एक्सेस कर सकते है इसका syntax आपको निचे दिया जा रहा है
class class-name { //class-members static void Main(string[] args) { //create object object-name.class-member-name; //access member with object } }
यदि आप class के members को class के बाहर किसी दूसरी class में एक्सेस करना चाहते है तो इसके लिए आपको उस class का object को क्रिएट करना होगा लेकिन ऐसा तब तक ही संभव होता है जब तक की वह class और उसके members public को डिफाइन होंगे इसका syntax आपको निचे दिया जा रहा है
public class yourclass { //public members } class yourAnotherClass { //create object of your class object-name.class-member-name; }
जब भी आप किसी भी class के members को एक्सेस करेंगे तो ऐसा आप object के नाम या this keyword के बाद dot(.) operator को लगाकर करेंगे जैसा की आप उपर दिए गए सभी syntaxes में दिखाता है
example of c# classes
मान लीजिये की यदि 100 persons का नाम और उनकी age को store करना चाह्हते है तो यदि आप ऐसा variables के द्वारा करेंगे तो आपको 200 variables को क्रिएट करने होंगे और उसके बाद यह भी ध्यान में रखना होगा की किस person को इनफार्मेशन(information) किस variables में है
variables को ना प्रयोग करके आप 100 index के 2 arrays को क्रिएट कर सकते है जिनमे एक array में आप persons के नाम को स्टोर करेंगे और दुसरे में उनकी age को स्टोर करेंगे लेकिन ऐसा करने से भी हर person की information अलग अलग बिखरी हुए होती है
इसके लिए सबसे बेहतर option यह होगा की आप एक class को क्रिएट कर सकते है उस class में आप name और age दो member को variables को क्रिएट कर सकते है
इसके बाद आप उस class के 100 objects को क्रिएट कर सकते है हर object के द्वारा आप एक person का नाम और उनकी age को स्टोर कर पाएंगे ऐसा करने से एक person की information एक ही जगह पर रहेगी और उसे आप एक single object के द्वारा आसानी से एक्सेस कर पाएंगे
Using system; Public class person { Public int age; } Class personFinal { Static void Main(String[] args) { Person p1=new Person(); p1.name=”c3shchool”; p1.age=100; Console.WriteLine(“Name: {0}”,p1.name); Console.WriteLine(“Age: {0}”,p1.age); } }
जैसा की आप उपर दी गए example में आप देख सकते है की person class का एक object को क्रिएट करके उसके द्वारा आप एक person की information को स्टोर की गए है बाद में इसी object के द्वारा आप उस person की information को एक्सेस करके display करवाई गयी है
इसी तरह आप और भी objects को क्रिएट कर सकते है और हर person की information को एक जगह से एक object के द्वारा स्टोर कर सकते है और एक्सेस कर सकते है
जैसा की आप देख सकते है classes के द्वारा आप को handle करना बहुत ही आसान होता है आप person type के object को एक array भी क्रिएट कर सकते है जिसमे हर index एक person की information को represent करेंगी
इसी प्रकार से आप name और age के आलावा भी किसी person से related बहुत सा data को स्टोर कर सकते है और उसे आप object के द्वारा आसानी से मैनेज कर सकते है class object oriented programming का सबसे powerful feature होता है
उपर दिए गए example निचे आपको दिया जा रहा है
Name: c3school Age:100
REFERENCE-https://www.tutorialspoint.com/csharp/csharp_classes.htm
c# classes in hindi
निवेदन:-आप सभी छात्र –छात्रों से निवेदन है की अगर आपको ये Topic(c# classes in hindi) या post अच्छा लगा हो तो कृपया आप इस वेबसाइट के बारे में अपने दोस्तों को जरुर बताये और -अगर कोई topic(c# classes in hindi) से संबधित प्रश्न हो तो कमेंट्स(comments) आपके लिए ही बना है और किसी Subject के लेकर भी कोई प्रश्न हो तो कमेंट करे c# classes in hindi