DEV Community

Er. Bhupendra
Er. Bhupendra

Posted on

USE NEW KEYWORD IN METHOD FOR OBJECT CREATION AND PUTTING VALUE IN IT(SPRINGBOOT)

thought)
return new CloudVendor("c1", "Vendor 1", "Address One", "9876543210");
"Can we use the new keyword right after return? I'm seeing this for the first time."
The user understands basics but is confused about object instantiation during the return statement. They are likely used to creating a variable first and then returning it.

*   Yes, it's absolutely legal and very common in Java/C#/C++.
*   Explain *what* is happening: An object is created in memory, and its reference is immediately passed back to the caller.
*   Compare it with the "long way" (creating a variable first).

*   *Step 1: The "Old/Long" way.*
Enter fullscreen mode Exit fullscreen mode
    ```java
    CloudVendor cv = new CloudVendor("c1", "Vendor 1", ...);
    return cv;
    ```
Enter fullscreen mode Exit fullscreen mode
*   *Step 2: The "Short" way (Anonymous Object).*
Enter fullscreen mode Exit fullscreen mode
    ```java
    return new CloudVendor(...);
    ```
Enter fullscreen mode Exit fullscreen mode
*   Memory efficiency (no need for a local variable name).
*   Cleaner/Shorter code.
*   Anonymous object concept.

*   Use simple Hindi.
*   "Haan, bilkul kar sakte hain." (Yes, definitely can).
*   "Anonymous object" concept.
*   Analogy: Giving someone a gift vs. putting it in a bag with a name tag first and then giving it.हाँ, बिल्कुल! Java में `return` के साथ `new` कीवर्ड का इस्तेमाल करना बहुत ही कॉमन है। इसे देखकर कंफ्यूज होने की ज़रूरत नहीं है।
Enter fullscreen mode Exit fullscreen mode

इसे आसान भाषा में समझते हैं:

1. आपने पहले क्या देखा होगा? (The Long Way)

आमतौर पर शुरुआती दौर में हम ऐसे कोड लिखते हैं:

// 1. पहले ऑब्जेक्ट बनाओ
CloudVendor v1 = new CloudVendor("c1", "Vendor 1", "Address One", "9876543210");

// 2. फिर उसे वापस भेजो
return v1;
Enter fullscreen mode Exit fullscreen mode

2. return new ... का क्या मतलब है? (The Short Way)

जब हम return new CloudVendor(...) लिखते हैं, तो हम बस ऊपर वाले दो स्टेप्स को एक ही लाइन में जोड़ देते हैं।

  • new CloudVendor(...): यह हिस्सा मेमोरी में एक नया ऑब्जेक्ट बनाता है।
  • return: यह हिस्सा उसी वक़्त उस ऑब्जेक्ट को मेथड से बाहर (caller के पास) भेज देता है।

इसे कब इस्तेमाल करते हैं?

जब हमें उस ऑब्जेक्ट का इस्तेमाल उसी मेथड के अंदर दोबारा नहीं करना होता, तो हम उसे कोई नाम (Variable name जैसे v1) देने के बजाय सीधे "Return" कर देते हैं।

इसे प्रोग्रामिंग की भाषा में Anonymous Object (बिना नाम वाला ऑब्जेक्ट) को रिटर्न करना कहते हैं।


एक मज़ेदार उदाहरण (Real Life Example):

मान लीजिए आप एक हलवाई की दुकान पर गए और आपने "समोसा" माँगा।

  • तरीका 1 (Variable वाला): हलवाई ने समोसा बनाया, उसे एक प्लेट में रखा, प्लेट पर आपका नाम लिखा, और फिर प्लेट आपको दी। (CloudVendor cv = new ...; return cv;)
  • तरीका 2 (Direct return वाला): हलवाई ने समोसा कढ़ाई से निकाला और सीधे आपके हाथ में दे दिया। उसे किसी प्लेट या नाम की ज़रूरत नहीं पड़ी। (return new Samosa();)

फायदा क्या है?

  1. Code छोटा हो जाता है: फालतू की एक्स्ट्रा लाइन नहीं लिखनी पड़ती।
  2. Memory: एक वेरिएबल का नाम (Reference) कम बनाना पड़ता है, जिससे कोड साफ़-सुथरा दिखता है।

क्या यह सही है?
हाँ, प्रोफेशनल कोडिंग में 90% समय ऐसे ही ऑब्जेक्ट रिटर्न किए जाते हैं अगर उनका उसी मेथड में कोई और काम न हो।

Top comments (0)