Constructor Methods c# In Hindi
C# प्रोग्रामिंग लैंग्वेज में कंस्ट्रक्टर एक स्पेशल यूजर डिफाइन वेरिएबल विथ पैरामीटर क्लास मेथड होते है, जो कस्टम क्लास में एक नए इंस्टेंस फंक्शन पैरामीटर ऑब्जेक्ट क्रिएट करने पर ऑटोमैटिकली कॉल हो जाते है। C# प्रोग्राम क्लास में क्रिएटेड कंस्ट्रक्टर मेथड का यूज़ ऑब्जेक्ट के डेटा मेंबर फील्ड को डिक्लेअर और इनिशियलाइज़ करने या क्लास ऑब्जेक्ट क्रिएट कर प्रोग्राम में कॉल करने में किया जाता है।

Special features of constructors in C# programming.
- Constructor name – हमेशा मौजूदा क्लास में क्रिएटेड क्लास पैरामीटर कंस्ट्रक्टर का नाम क्लास के नाम जैसा ही होना चाहिए।
- No return type – किसी क्लास में क्रिएटेड कंस्ट्रक्टर मेथड का कोई रिटर्न डाटा टाइप नहीं होता है, यहाँ तक की वॉइड डाटा टाइप भी नहीं होता है।
- Automatic call – यूजर डिफाइन क्लास में नए ऑब्जेक्ट क्रिएट करने पर कंस्ट्रक्टर ऑटोमैटिकली कॉल हो जाते है. इस वजह से C# प्रोग्रामर को इसे क्लियर आर्डर में इनवोक करने की आवश्यकता नहीं है।
- Overloading – एक यूजर डिफाइन क्लास में मल्टीप्ल इंडिविजुअल वेरिएबल पैरामीटर लिस्ट (कन्स्ट्रक्टर ओवरलोडिंग) मेथड वाले कई कंस्ट्रक्टर मेथड या डाटा टाइप हो सकते हैं. जिसमे आप जरूरत पड़ने पर मल्टीप्ल इंडिविजुअल टाइप क्लास ऑब्जेक्ट को क्रिएट कर सकते हैं।
Basic C# constructor syntax.
यहाँ आपको एक क्लास में बेसिक कंस्ट्रक्टर मेथड का एक एक्साम्प्ल दिया गया है.
class Employee
{
public string Emp_Name;
public int Emp_Age;
// here we define a Constructor method
public Employee(string emp_name, int emp_age)
{
Emp_Name = emp_name;
Emp_Age = emp_age;
}
}
Here is a basic constructor method example.
- यहाँ एम्प्लॉई क्लास में एक कंस्ट्रक्टर मेथड Employee(string emp_name, int emp_age) डिफाइन की गई है, जो मौजूदा एम्प्लॉई क्लास में नए ऑब्जेक्ट क्रिएट करने पर उसके Emp_Name और Emp_Age फ़ील्ड को इनिशियलाइज़ करता है।
Creating an object with a constructor in C#.
जब C# प्रोग्रामर किसी क्लास में कोई नया ऑब्जेक्ट क्रिएट करते हैं, तो यूजर जरूरत के अनुसार इसमें क्लास पैरामीटर आर्गुमेंट वैल्यू को पास कर सकते हैं. जो क्लास में नए ऑब्जेक्ट को इनिशियलाइज़ करने के लिए कंस्ट्रक्टर में पास किए जाते है.
class Employee
{
static void Main()
{
// here we Creating an class object of the Employee class
Employee employees = new Employee(“Bhavishi Deora”, 21);
// here we Accessing the properties of the employee class object
Console.WriteLine($”Emp_Name – {employees.Emp_Name}, Emp_Age – {employees.Emp_Age}”);
}
}
Default Constructor in C#.
यदि C# प्रोग्रामर क्लियर आर्डर में किसी प्रोग्राम में कोई कंस्ट्रक्टर क्रिएट या डिफाइन नहीं करते हैं, तो C# प्रोग्रामिंग आपको एक डिफ़ॉल्ट कंस्ट्रक्टर मेथड प्रोवाइड करता है. जो डिफ़ॉल्ट रूप से कोई पैरामीटर वैल्यू इनपुट नहीं करता है। यह बस एक यूजर डिफाइन क्लास ऑब्जेक्ट फ़ील्ड्स को उनकी डिफ़ॉल्ट वैल्यू पर इनिशियलाइज़ या असाइन कर एक्टिवेट करता है. जैसे, रेफरेंस टाइप के लिए null वैल्यू डिफाइन करना, न्यूमेरिक डाटा टाइप के लिए 0, बूलियन के लिए True या false डिफाइन या असाइन कर सकते है।
Example with a default constructor in C#.
class Employee
{
public string Emp_Name;
public int Emp_Age;
// here we use Default Claas constructor, here C# provides you this if no constructor method is defined
public Employee()
{
Emp_Name = “Random”;
Emp_Age = 0;
}
}
class Employee
{
static void Main()
{
// here we Using the default constructor method
Employee employees = new Employee();
Console.WriteLine($”Emp_Name – {employees.Emp_Name}, Emp_Age – {employees.Emp_Age}”);
}
}
Default Constructor Explanation in C#.
- यहाँ इस प्रोग्राम में C# प्रोग्रामर ने कोई मैन्युअल कंस्ट्रक्टर क्रिएट या डिफाइन नहीं किया है, यहाँ C# प्रोग्रामिंग अपने आप आपको एक डिफ़ॉल्ट कंस्ट्रक्टर मेथड फंक्शन प्रोवाइड करता है। यहाँ कंस्ट्रक्टर मेथड में Emp_Name “Random” पर डिफाइन या सेट किया गया है, और एम्प्लॉई ऐज को Emp_Age कंस्ट्रक्टर के अकॉर्डिंग 0 वैल्यू पर सेट किया गया है।
Constructor overloading concept in C#.
C# प्रोग्रामिंग में प्रोग्रामर मल्टीप्ल इंडिविजुअल क्लास पैरामीटर लिस्ट के साथ एक क्लास में कई यूजर डिफाइन कंस्ट्रक्टर ऑब्जेक्ट को क्रिएट कर सकते हैं। इस पुरे प्रोसेस को कंस्ट्रक्टर ओवरलोडिंग मेथड कहा जाता हैं।
Example of constructor overloading in C#.
class Employee
{
public string Emp_Name;
public int Emp_Age;
public string Location;
// here we create employee Constructor with emp_name and emp_age with 2 parameters
public Employee(string emp_name, int emp_age)
{
Emp_Name = emp_name;
Emp_Age = age;
Location = “Undefine”;
}
// here we Overloaded constructor method with emp_name, emp_age, and location parameter
public Employee(string emp_name, int emp_age, string location)
{
Emp_Name = emp_name;
Emp_Age = emp_age;
Location = location;
}
}
class Employee
{
static void Main()
{
// here we Using the employee class constructor method with two variable parameters
Employee employees = new Employee(“Siddhi Deora”, 19);
Console.WriteLine($”Emp_Name – {employees.Emp_Name}, Emp_Age – {employees.Emp_Age}, Location – {employees.location}”);
// here we Using the method overloaded constructor with three employee class variable parameters
Employee employees1 = new Employee(“Bhavishi Deora”, 21, “Abc Street New york”);
Console.WriteLine($”Emp_Name – {employees1.Emp_Name}, Emp_Age – {employees1.Emp_Age}, Location – {employees1.location}”);
}
}
constructor method overloading explanation in C#.
- यहां, इस प्रोग्राम में हमने Employee क्लास क्रिएटेड पैरामीटर ऑब्जेक्ट को स्टार्ट या इनिशियलाइज़ करने के दो अलग-अलग मेथड या स्टेप परमिशन प्रोवाइड करने के लिए कंस्ट्रक्टर को ओवरलोड किया है.
- फर्स्ट मेथड जिसमे सिर्फ़ एम्प्लॉई नाम और एम्प्लॉई ऐज के साथ (पहले कंस्ट्रक्टर का इस्तेमाल करके) इसे यूज़ किया जा सकता है।
- सेकंड मेथड में एम्प्लॉई क्लास में एम्प्लॉई नाम, एम्प्लॉई ऐज और एम्प्लॉई लोकेशन के साथ (दूसरे कंस्ट्रक्टर का इस्तेमाल करके) इसे यूज़ किया जा सकता है।
Constructor chaining concept in C#.
C# प्रोग्रामिंग में कन्स्ट्रक्टर चेनिंग मेथड या कांसेप्ट का अर्थ है की C# प्रोग्रामिंग में डिक्लेअर क्रिएटेड एक ही क्लास में एक कंस्ट्रक्टर मेथड को दूसरे अन्य कंस्ट्रक्टर मेथड से कॉल करना। आप C# प्रोग्राम में this रिजर्व्ड कीवर्ड का यूज़ करके इसे कर सकते है। यह यूजर डिफाइन कंस्ट्रक्टर मेथड को इनिशियलाइज़ेशन करने के लिए एक दूसरे कंस्ट्रक्टर का दोबारा यूज़ करके इसे कर सकते है, और यह मेथड आपको प्रोग्राम सोर्स कोड डुप्लीकेशन प्रोसेस से बचने में हेल्प करता है।
Example of constructor chaining in C#.
class Employee
{
public string Emp_Name;
public int Emp_Age;
public string Location;
// here we create Constructor with emp_name and emp_age parameter
public Employee(string emp_name, int emp_age)
{
Emp_Name = emp_name;
Emp_Age = emp_age;
// here it Calls another constructor with an additional location parameter element
Location= “Undefined”;
}
// here we define a Constructor with emp_name, emp_age, and location default parameter
public Employee(string emp_name, int emp_age, string location) : this(emp_name, emp_age)
{
Location = location;
}
}
Here in this constructor chaining example.
- यहाँ इस प्रोग्राम में सेकंड कंस्ट्रक्टर मेथड में Emp_Name और Emp_Age को इनिशियलाइज़ करने के लिए this(emp_name, emp_age) मेथड का यूज़ करके फर्स्ट कंस्ट्रक्टर मेथड को कॉल करता है, और फिर एम्प्लॉई लोकेशन फ़ील्ड वैल्यू को असाइन करता है।
Constructor Methods Summary in C#.
- Constructor Method – C# प्रोग्रामिंग में कंस्ट्रक्टर स्पेशल यूजर डिफाइन फंक्शन या क्लास मेथड होते हैं, इनका C# प्रोग्राम में यूज़ नए क्लास ऑब्जेक्ट पैरामीटर वेरिएबल वैल्यू को स्टार्ट या इनिशियलाइज़ करने में किया जाता है।
- Default Constructor – यदि C# प्रोग्रामर ने मौजूदा प्रोग्राम में कोई कंस्ट्रक्टर मेथड डिफाइन नहीं किया है, तो C# प्रोग्राम आपको एक डिफ़ॉल्ट कंस्ट्रक्टर मेथड प्रोवाइड करता है। यह मौजूदा क्लास ऑब्जेक्ट वेरिएबल पैरामीटर फ़ील्ड को उनकी डिफ़ॉल्ट वैल्यू पर इनिशियलाइज़ करता है।
- Parameterized Constructors – किसी क्लास में न्यू ऑब्जेक्ट क्रिएट करते समय आपको यह वैल्यू पास करने में हेल्प करता हैं, और यह यूजर डिफाइन क्लास कंस्ट्रक्टर मेथड फ़ील्ड को इनिशियलाइज़ करने के लिए उन वैल्यू को यूज़ करता है।
- Constructor Overloading – C# प्रोग्रामर मल्टीप्ल इंडिविजुअल मेथड से न्यू ऑब्जेक्ट क्रिएट करने के लिए अलग-अलग वेरिएबल पैरामीटर लिस्ट वाले कई कंस्ट्रक्टर डिफाइन कर सकते हैं।
- Constructor chaining– यह प्रोसेस आपको एक ही क्लास में डिफाइन एक कंस्ट्रक्टर मेथड पैरामीटर वैल्यू को दूसरे डिफाइन क्लास मेथड से कॉल करने की परमिशन प्रोवाइड करता है।
