Constructors and Default Constructor In Hindi
जावा प्रोग्रामिंग में यूजर डिफाइन क्लास प्रोग्राम में कंस्ट्रक्टर एक स्पेशल क्लास कालिंग मेथड होते हैं, जावा प्रोग्राम में क्लास कंस्ट्रक्टर का यूज़ क्लास के लिए ऑब्जेक्ट इंस्टैंस डाटा को इनिशियलाइज़ करने में किया जाता है। जब जावा प्रोग्राम में किसी क्लास का ऑब्जेक्ट क्रिएट किया जाता है, तो पहले इन्हे क्लास डाटा टाइप में इनवोक किया जाता है, और ये क्लास कन्स्ट्रुक्टर ऑब्जेक्ट के इंस्टेंस वेरिएबल के लिए इनिशियल वैल्यू सेट करने के लिए रेस्पोंसिबल होते हैं।

What is a Class Constructor in Java?
जावा क्लास प्रोग्राम में कंस्ट्रक्टर एक स्पेशल कालिंग मेथड है, प्रोग्राम में डिक्लेअर क्लास कंस्ट्रक्टर नाम क्लास के जैसा ही होना चाहिए। जब यूजर डिफाइन क्लास में कोई ऑब्जेक्ट या इंस्टैंस क्रिएट करता है, तो यह क्लास में अपने आप को कॉल करता है। जावा क्लास में कंस्ट्रक्टर डिक्लेअर करने का उद्देश्य क्लास ऑब्जेक्ट के इंस्टेंस वेरिएबल को वैल्यू प्रोवाइड कर उसकी डिफ़ॉल्ट स्टेट को क्लास प्रोग्राम में इनिशियलाइज़ करने में होता है।
Elements of Class Constructor in Java.
- Constructor Name – याद रहे, जावा क्लास में डिक्लेअर कंस्ट्रक्टर का नाम एग्जैक्ट क्लास के नाम जैसा ही होना चाहिए।
- No Return Type – जावा क्लास में डिक्लेअर कंस्ट्रक्टर का कोई रिटर्न डाटा टाइप नहीं होता है, यहाँ तक की वॉइड फंक्शन भी नहीं।
- Automatic Invocation – जब क्लास में कोई नया ऑब्जेक्ट new कीवर्ड का यूज़ करके क्रिएट किया जाता है, तो क्लास प्रोग्राम में डिक्लेअर कंस्ट्रक्टर प्रोग्राम में अपने आप कॉल हो जाता है।
Types of Constructors in Java Classes
जावा प्रोग्रामिंग में मुख्य रूप से दो प्रकार के कंस्ट्रक्टर होते हैं.
- Default Constructor – जावा प्रोग्रामिंग में डिफ़ॉल्ट कन्स्ट्रुक्टर बिना पैरामीटर वाला एक कंस्ट्रक्टर होता है, जो क्लास प्रोग्राम में ऑब्जेक्ट को डिफ़ॉल्ट वैल्यू के साथ इनिशियलाइज़ करने में हेल्प करता है।
- Parameterized Constructor – जावा क्लास प्रोग्राम में पैरामीटर कन्स्ट्रुक्टर एक कंस्ट्रक्टर होता है, जो क्लास प्रोग्राम में ऑब्जेक्ट को एक स्पेशल वैल्यू के साथ इनिशियलाइज़ करने के लिए जावा यूजर से पैरामीटर वैल्यू को इनपुट लेता है।
Default Constructor in Java.
जावा प्रोग्रामिंग में एक डिफ़ॉल्ट कंस्ट्रक्टर एक ऐसा यूजर डिफाइन कंस्ट्रक्टर टाइप होता है, जो जावा प्रोग्रामर या यूजर से कोई आर्गुमेंट एक्सेप्ट नहीं करता और क्लास ऑब्जेक्ट को एक डिफ़ॉल्ट वैल्यू प्रोवाइड करता है। यदि जावा प्रोग्रामर किसी क्लास में कोई कंस्ट्रक्टर मेथड को क्लियर आर्डर में डिफाइन नहीं करते हैं. तो जावा कंपाइलर यूजर को एक नो-आर्गुमेंट कंस्ट्रक्टर प्रोवाइड करत है. जो क्लास इंस्टेंस वेरिएबल्स को डिफ़ॉल्ट वैल्यू जैसे, null, 0, false, आदि, डेटा टाइप के आधार पर कन्स्ट्रुक्टर वैल्यू को इनिशियलाइज़ करता है।
यदि किसी जावा क्लास प्रोग्राम में कोई कंस्ट्रक्टर प्रोवाइड नहीं किया गया है, तो जावा प्रोग्रामिंग जावा यूजर को अपने आप एक डिफ़ॉल्ट कंस्ट्रक्टर प्रोवाइड करता है. जो क्लास ऑब्जेक्ट में डिक्लेअर इंस्टेंस वेरिएबल्स को डिफ़ॉल्ट कन्स्ट्रुक्टर वैल्यू पर इनिशियलाइज़ करता है।
जावा यूजर क्लास में अपना खुद का एक डिफ़ॉल्ट कंस्ट्रक्टर क्रिएट या डिफाइन कर सकते हैं, या यदि मौजूदा क्लास में आपका कोई कंस्ट्रक्टर डिफाइन नहीं है. तो जावा क्लास आपको एक डिफ़ॉल्ट रूप से कन्स्ट्रुक्टर प्रोवाइड करता है।
syntax of a default constructor in Java.
public ClassName() {
// user define class Constructor code
}
Example of a default constructor in Java programming.
public class Employee {
// here we define Instance employee class variables
String emp_name;
String age;
int salary;
// here Default constructor declare with no parameters value
public Employee() {
// here we Initializing employee class instance variables with default values
emp_name = “notknown”;
age = “notknown”;
salary = 0;
}
// here we use Method to display employee class information
public void empInfo() {
System.out.println(“employee emp_name is – ” + emp_name);
System.out.println(“employee age is – ” + age);
System.out.println(“employee salary is – ” + salary);
}
// here we define Main method
public static void main(String[] args) {
// here we Creating an object using the default constructor method
Employee newEmployee = new Employee(); // here The default constructor is called here
// here it Calling the method to display the details of newEmployee class element
newEmployee.empInfo();
}
}
Explaining default constructor in Java.
- यहाँ एम्प्लॉई क्लास में एक डिफ़ॉल्ट कंस्ट्रक्टर Employee() डिफाइन किया गया है, जो Employee क्लास में इंस्टेंस वेरिएबल (emp_name, age, salary) को डिफ़ॉल्ट वैल्यू पर इनिशियलाइज़ किया गया है। यहाँ newEmployee का यूज़ करके newEmployee ऑब्जेक्ट क्रिएट किया जाता है, तो यहाँ क्लास अपने आप डिफ़ॉल्ट कंस्ट्रक्टर को कॉल करता है. जो एम्प्लॉई क्लास में emp_name, age, salary की वैल्यू को स्पेसिफिक आर्डर में “notknown”, “notknown”, और 00 वैल्यू पर सेट किया गया है।
- एम्प्लॉई क्लास में डिफ़ॉल्ट कन्स्ट्रुक्टर वैल्यू को रिप्रेजेंट करने के लिए empInfo() मेथड को कॉल किया जाता है।
Parameterized Constructor in Java.
जावा क्लास प्रोग्रामिंग में पैरामीटराइज्ड कंस्ट्रक्टर एक ऐसा यूजर डिफाइन कंस्ट्रक्टर मेथड होता है, जो क्लास प्रोग्राम में जावा यूजर से आर्गुमेंट्स वैल्यू को एक्सेप्ट करता है. जिसे जावा प्रोग्रामर क्लास प्रोग्राम में किसी ऑब्जेक्ट इंस्टैंस को क्रिएट करते समय आसानी से वैल्यू को इनिशियलाइज़ करने के लिए कस्टम वैल्यू प्रोवाइड कर सके।
Syntax of a parameterized constructor in Java.
public ClassName(dataType parameter1, dataType parameter2, …) {
// user define class Constructor code
}
Example of a parameterized constructor in a Java class.
public class Employee {
// here we create a Instance of employee class variables
String emp_name;
String age;
int salary;
// here we define Parameterized constructor with argument
public Employee(String emp_name, String age, int salary) {
this.emp_name = emp_name; // here we Initialize the ’emp_name’ with the value passed in it
this.age = age; // here we Initialize the ‘age’ employee class variable with the value passed in it
this.salary = salary; // here we Initialize the ‘salary’ variable with the value passed in it
}
// here we define empnfo() class Method to display employee class information
public void empInfo() {
System.out.println(“employee emp_name is – ” + emp_name);
System.out.println(“employee age is – ” + age);
System.out.println(“employee salary is – ” + salary);
}
// here we define Main class method
public static void main(String[] args) {
// here we Creating an object using the parameterized constructor for employee class
Employee testEmployee = new Employee(“Bhavishi”, “21”, 9999); // here employee class Parameters passed to constructor
// here it Calling the method to display the details of testEmployee class info
testEmployee.empInfo();
}
}
Parameterized constructor in a Java explanation.
- यहाँ एम्प्लॉई क्लास में एक पैरामीटराइज़्ड कंस्ट्रक्टर डिक्लेअर किया गया है, जो डिफ़ॉल्ट रूप से जावा यूजर से तीन पैरामीटर वैल्यू emp_name, age, salary को एक्सेप्ट करता है।
- जब जावा यूजर new Employee(“Bhavishi”, “21”, 9999) के साथ ऑब्जेक्ट testEmployee क्रिएट करते हैं, तो कंस्ट्रक्टर को new Employee(“Bhavishi”, “21”, 9999); आर्गुमेंट्स के साथ कॉल अपने आप को कॉल करता है. जो जावा एम्प्लॉई क्लास में इंस्टेंस वेरिएबल्स को उन दिए गए वैल्यूज़ पर आटोमेटिक इनिशियलाइज़ करते हैं।
- इसके बाद यह empInfo() एम्प्लॉई क्लास मेथड में emp_name, age, और salary की वैल्यूज़ को प्रिंट करता है।
Default Constructor vs. Parameterized Constructor in Java.
Default Constructor in Java.
- जावा क्लास प्रोग्राम में डिफ़ॉल्ट कन्स्ट्रुक्टर कोई आर्गुमेंट एक्सेप्ट नहीं करता है।
- क्लास में डिफाइन ऑब्जेक्ट को डिफ़ॉल्ट कन्स्ट्रुक्टर वैल्यूज़ या तो कंस्ट्रक्टर में क्लियर आर्डर में जावा की डिफ़ॉल्ट वैल्यूज़ जैसे, 0, false, null के साथ प्रोग्राम में इनिशियलाइज़ करता है।
- यदि जावा क्लास में कोई डिफ़ॉल्ट कंस्ट्रक्टर डिफाइन नहीं किया गया है, तो जावा प्रोग्राम डिफ़ॉल्ट रूप से बिना आर्गुमेंट वाला कंस्ट्रक्टर प्रोवाइड करता है।
Parameterized Constructor in Java.
- जावा प्रोग्राम में एक पैरामीटराइज्ड कंस्ट्रक्टर जावा प्रोग्रामर को डिफाइन और डिक्लेअर पैरामीटराइज्ड कंस्ट्रक्टर मेथड के अनुसार नई क्लास ऑब्जेक्ट इंस्टैंस क्रिएट करने में हेल्प करता है.
- जावा प्रोगाम में क्लास ऑब्जेक्ट के कस्टमाइज़्ड इनिशियलाइज़ेशन की परमिशन प्रोवाइड करने के लिए पैरामीटर इनपुट वैल्यू एक्सेप्ट करता है।
- जब जावा प्रोग्रामर एक क्लास ऑब्जेक्ट को स्पेशल वैल्यूज़ के साथ इनिशियलाइज़ करना चाहते हैं, तो यह यह फीचर्स काम आता है।
