Java Constructors

किसी object को बनाते समय उसे initialize करने के लिए Constructors का उपयोग किया जाता है। यह एक method के समान है लेकिन ध्यान रहे की यह एक method नहीं है। हर बार जब new कीवर्ड का उपयोग करके कोई object बनाया जाता है, तो कम से कम एक java constructor कॉल होता है।

किसी class के लिए constructor बनाना आवश्यक नहीं है। चूंकि सभी classes में डिफ़ॉल्ट रूप से constructors होते हैं, लेकिन यदि हम manual रूप से class constructor नहीं बनाये जाते हैं तो Java, automatically एक बना लेता है, और उसके बाद हम object attributes के लिए initial वैल्यू सेट नहीं कर सकते हैं।

Java Constructor बनाने के नियम

  • Constructor का नाम class के नाम से मेल खाना चाहिए।
  • एक Constructor के पास कोई explicit return type नहीं होना चाहिए (जैसे void)।
  • एक Java constructor कभी भी abstract, static, final और synchronized नहीं हो सकता है

Types of Java Constructor

जावा में constructor दो प्रकार के होते हैं।

(a) No Argument (No-Arg) Constructor
(b) Parameterized Constructor

No Argument Constructor

एक constructor जिसमें कोई parameter नहीं होता है उसे efault constructor के रूप में जाना जाता है। यदि हम अपनी class में किसी भी constructor को implement नहीं करते हैं, तो जावा compiler उस class के लिए एक default constructor (No Argument Constructor) insert कर देता हैं। यह default वैल्यू के साथ किसी भी uninitialized instance variables को initializes करता है।

Example-1: no argument Constructor
class MyClass {

  // Creating a default constructor
  MyClass() {
    System.out.println("Default Constructor is created");
  }

  // Main method
  public static void main(String[] args) {
    // Calling constructor without any parameter
    MyClass myObj = new MyClass();
  }
}
// Result: Default Constructor is created
Example-2: no argument Constructor
class MyClass {

  // Creating a default constructor
  MyClass() {
    int x = 10;
    System.out.println(x);
  }

  // Main method
  public static void main(String[] args) {
    // Calling constructor without any parameter
    MyClass myObj = new MyClass();
  }
}
// Result: 10

उद्धारण को समझते हैं

1st : उपरोक्त दोनों उदाहरणों में, हमने MyClass class में no-arg constructor बनाया है।

2nd : हमने MyClass को कोई parameters नहीं दिया है, यानि की हमने कोई भी वैल्यू का पास नहीं किया हैं।

3rd : लेकिन जब constructor को कॉल किया जाता है, तो यह object creation के समय अपने आप लागू हो जाता है।

Parameterized Constructor

जिस constructor में arguments (Parameters) होते हैं, उसे parameterized constructor के रूप में जाना जाता है। इसका उपयोग class की attributes को हमारे अपने वैल्यू (हमारे द्वारा assign वैल्यू) के साथ initialize करने के लिए किया जाता है।

Example: Parameterized Constructor
public class MyClass {

  int num;

  // Creating a parameterized constructor
  public MyClass(int x) {
    num = x;
  }

  // Main method
  public static void main(String[] args) {
    // Calling constructor with integer type parameter
    MyClass myObj = new MyClass(10);
    System.out.println(myObj.num);
  }
}
// Result: 10

उद्धारण को समझते हैं

1st : उपरोक्त दोनों उदाहरणों में, हमने पैरामीटर int x के साथ एक parameterized constructor बनाया है।

2nd : Constructor के अंदर हम num को x (num = x) पर सेट करते हैं।

3rd : जब हम constructor को कॉल करते हैं, तो हम constructor को एक parameter (10) पास करता हैं।

Finally : अंत में, जब हम num का वैल्यू प्रिंट करते हैं तो यह 10 हो जाता है।

Article By: Brajlal Prasad
Created on: 18 Feb 2023  6712  Views
 Print Article
Report Error

If you want to report an error, or any suggestion please send us an email to [email protected]