BCA / B.Tech 9 min read

Reference Variable in Hindi

Reference Variable in java in Hindi | java में Reference Variable हिंदी में :


संदर्भ चर (Reference Variable) क्या है?

जावा जैसी ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग भाषाओं में, संदर्भ चर (Reference Variable) एक ऐसा चर होता है जो किसी ऑब्जेक्ट के मेमोरी में स्थित स्थान (memory address) को संदर्भित करता है, न कि ऑब्जेक्ट के वास्तविक मान को। इसका मतलब है कि जब आप किसी ऑब्जेक्ट को किसी संदर्भ चर में असाइन करते हैं, तो आप ऑब्जेक्ट की कॉपी नहीं बना रहे होते, बल्कि उस ऑब्जेक्ट के मेमोरी लोकेशन को पॉइंट कर रहे होते हैं।

इसका उपयोग किसी ऑब्जेक्ट या डेटा स्ट्रक्चर को मेमोरी में संदर्भित करने के लिए किया जाता है। जावा में हर ऑब्जेक्ट के लिए एक रेफरेंस वैरिएबल बनती है जो उस ऑब्जेक्ट की लोकेशन को पॉइंट करता है। इसे समझने के लिए पहले यह समझना जरूरी है कि जावा में प्राइमिटिव डेटा टाइप्स और रेफरेंस टाइप्स क्या होते हैं।

संदर्भ चर (Reference Variable) जावा में एक महत्वपूर्ण भूमिका निभाते हैं, क्योंकि जावा एक ऑब्जेक्ट-ओरिएंटेड प्रोग्रामिंग भाषा है और हर ऑब्जेक्ट को रेफरेंस के माध्यम से ही एक्सेस किया जाता है। रेफरेंस वैरिएबल्स प्रोग्रामिंग में ऑब्जेक्ट्स के डेटा और मेथड्स को एक्सेस करने में मदद करते हैं, और इनका सही उपयोग करना किसी भी जावा प्रोग्रामर के लिए आवश्यक है।

जावा में डेटा टाइप्स :
जावा में दो प्रकार के डेटा टाइप्स होते हैं:

प्राइमिटिव डेटा टाइप्स (Primitive Data Types) :

ये डेटा टाइप्स सीधे तौर पर मान को स्टोर करते हैं। जैसे, int, char, float, boolean इत्यादि। उदाहरण के लिए:

int a = 5;
यहाँ a एक प्राइमिटिव वैरिएबल है और इसमें सीधे तौर पर मान 5 स्टोर होता है।

रेफरेंस डेटा टाइप्स (Reference Data Types) :

ये डेटा टाइप्स किसी ऑब्जेक्ट को संदर्भित करते हैं। इसमें ऑब्जेक्ट का मेमोरी में स्थान होता है, न कि उसका वास्तविक मान। उदाहरण के लिए:

Student s1 = new Student();
यहाँ s1 एक रेफरेंस वैरिएबल है और यह Student नामक ऑब्जेक्ट को संदर्भित कर रहा है। इसका मतलब है कि s1 में ऑब्जेक्ट के वास्तविक डेटा की बजाय उस ऑब्जेक्ट का एड्रेस स्टोर होता है।

रेफरेंस वैरिएबल का कार्य :

जब आप किसी ऑब्जेक्ट को रेफरेंस वैरिएबल के रूप में उपयोग करते हैं, तो उस ऑब्जेक्ट का मेमोरी एड्रेस वैरिएबल में स्टोर होता है। इसका मतलब है कि आप उस वैरिएबल के जरिए ऑब्जेक्ट के सभी मेथड्स और वैरिएबल्स को एक्सेस कर सकते हैं। उदाहरण के लिए:

java
Copy code
class Student {
    String name;
    int age;

    void display() {
        System.out.println("Name: " + name);
        System.out.println("Age: " + age);
    }
}

public class Main {
    public static void main(String[] args) {
        Student s1 = new Student();  // s1 रेफरेंस वैरिएबल
        s1.name = "Rahul";
        s1.age = 20;

        s1.display();  // ऑब्जेक्ट के मेथड को कॉल कर सकते हैं
    }
}
यहाँ s1 एक रेफरेंस वैरिएबल है जो Student क्लास के ऑब्जेक्ट को संदर्भित कर रहा है। इसके जरिए आप ऑब्जेक्ट के अंदर के डेटा (जैसे name और age) को एक्सेस कर सकते हैं और मेथड्स को भी कॉल कर सकते हैं।

रेफरेंस वैरिएबल और ऑब्जेक्ट के बीच संबंध :

मेमोरी एलोकेशन: जब किसी ऑब्जेक्ट को new कीवर्ड के माध्यम से क्रिएट किया जाता है, तो वह मेमोरी में एक विशेष स्थान प्राप्त करता है, जिसे हीप मेमोरी (Heap Memory) कहा जाता है। रेफरेंस वैरिएबल उस ऑब्जेक्ट के मेमोरी लोकेशन को स्टोर करता है।

कई रेफरेंस वैरिएबल्स एक ही ऑब्जेक्ट को पॉइंट कर सकते हैं: जावा में आप एक ही ऑब्जेक्ट के लिए कई रेफरेंस वैरिएबल्स बना सकते हैं। इसका मतलब है कि एक ही ऑब्जेक्ट को कई नामों से संदर्भित किया जा सकता है। उदाहरण:

Student s1 = new Student();
Student s2 = s1;  // s1 और s2 दोनों एक ही ऑब्जेक्ट को पॉइंट कर रहे हैं
इस स्थिति में, s1 और s2 दोनों एक ही ऑब्जेक्ट को संदर्भित करते हैं। अगर आप s1 या s2 के जरिए ऑब्जेक्ट के मान को बदलते हैं, तो दोनों में बदलाव दिखेगा क्योंकि दोनों एक ही ऑब्जेक्ट के मेमोरी लोकेशन को पॉइंट कर रहे हैं।

null रेफरेंस: जब किसी रेफरेंस वैरिएबल को किसी ऑब्जेक्ट के साथ असाइन नहीं किया जाता है, तो उसका मान null होता है। यह दर्शाता है कि वैरिएबल किसी भी ऑब्जेक्ट को पॉइंट नहीं कर रहा है। उदाहरण:

Student s1 = null;
इस स्थिति में, यदि आप s1 के माध्यम से किसी ऑब्जेक्ट के डेटा को एक्सेस करने की कोशिश करेंगे, तो NullPointerException मिलेगी, क्योंकि s1 किसी भी ऑब्जेक्ट को पॉइंट नहीं कर रहा है।

रेफरेंस वैरिएबल का उपयोग :

ऑब्जेक्ट्स के मेथड्स को कॉल करने के लिए: रेफरेंस वैरिएबल का उपयोग किसी ऑब्जेक्ट के मेथड्स को एक्सेस करने और उन्हें कॉल करने के लिए किया जाता है। उदाहरण के लिए:

Student s1 = new Student();
s1.display();  // रेफरेंस वैरिएबल का उपयोग करके मेथड कॉल किया
ऑब्जेक्ट्स के डेटा में बदलाव करने के लिए: रेफरेंस वैरिएबल का उपयोग करके आप किसी ऑब्जेक्ट के डेटा को बदल सकते हैं। उदाहरण:

s1.name = "Amit";
इससे s1 ऑब्जेक्ट के name वैरिएबल का मान "Amit" हो जाएगा।

एक ही ऑब्जेक्ट के लिए कई रेफरेंस: एक ऑब्जेक्ट के लिए आप कई रेफरेंस वैरिएबल्स बना सकते हैं और वे सभी एक ही ऑब्जेक्ट को पॉइंट कर सकते हैं। उदाहरण:

Student s1 = new Student();
Student s2 = s1;  // s1 और s2 दोनों एक ही ऑब्जेक्ट को पॉइंट कर रहे हैं
ऑब्जेक्ट्स की तुलना करने के लिए: रेफरेंस वैरिएबल्स का उपयोग करके आप यह जांच सकते हैं कि दो रेफरेंस वैरिएबल्स एक ही ऑब्जेक्ट को पॉइंट कर रहे हैं या नहीं। उदाहरण:

if(s1 == s2) {
    System.out.println("Both are pointing to the same object");
}

Features of Reference Variable in Java in Hindi |  रेफरेंस वैरिएबल की विशेषताएँ :

  • किसी ऑब्जेक्ट को सीधे न संभालकर, उसके एड्रेस को पॉइंट करता है।
  • इसे बदला जा सकता है, यानी एक रेफरेंस वैरिएबल को किसी दूसरे ऑब्जेक्ट के साथ असाइन किया जा सकता है।
  • null मान प्राप्त कर सकता है, जिसका अर्थ होता है कि यह किसी भी ऑब्जेक्ट को संदर्भित नहीं कर रहा है।
  • रेफरेंस वैरिएबल का आकार प्लेटफॉर्म पर निर्भर करता है क्योंकि यह मेमोरी एड्रेस को स्टोर करता है।
  • Garbage Collection: जब कोई रेफरेंस वैरिएबल किसी ऑब्जेक्ट को पॉइंट नहीं कर रही होती है, तो उस ऑब्जेक्ट को जावा का Garbage Collector हटा सकता है।


In this Chapter

Reference Variable in Hindi
BCA || Java 2024 Paper || MDSU Exam Paper
What is Java, Characteristics of Java - Java क्या है और जावा की विशेषताएं
Difference between Java and C++ in Hindi. (Java और C++ में अंतर )
Applications of Java Programming in Hindi
OOPS concepts in Java Hindi
What is JVM and JRE in hindi
Features of JAVA in hindi
What is Java bean in hindi & advantage in Hindi
Difference between Java and JavaScript in Hindi
JIT Compiler in Hindi
What is Control Statement (structure) in Hindi
What is variable in hindi (वेरिएबल क्या होता है?):-
Java URL Class in Hindi
What is Java swing and its methods in Hindi
Operators in Java in Hindi
Class & Method in Hindi
Inheritance in Java in Hindi | जावा में इनहेरिटेंस हिंदी में
instance Operator in Hindi
Token in Hindi
Data Types in Hindi
Constructor in Hindi
Object-Oriented-Design in Hindi
Conditional Operator in Hindi
Constant in Hindi
Type Casting in Hindi
Literals in Hindi
Identifiers in Hindi
Array in Hindi
Anonymous Array in Hindi
Access Modifiers in Hindi
Enum Data type in Hindi
Keywords in Hindi-Java
Super Keywords in Hindi
Static Keywords in Hindi
Final Keywords in Hindi
New Operator in Hindi
Method Types in Hindi
Method Overloading in Hindi
Method Overriding in Hindi
Method Hiding in Hindi
Class & Object in Hindi
Diffrence Beetween Class & Object in Hindi
Math Class in Hindi
Abstraction in Hindi
Adapter Pattern in Hindi
Package in Hindi
Class & Structure in Java in Hindi
Exception Handling in Hindi