Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Java

जावा में स्टेटिक बाइंडिंग और डायनामिक बाइंडिंग में अंतर

बाइंडिंग मेथड कॉल और मेथड के वास्तविक कार्यान्वयन के बीच लिंक बनाने का एक तंत्र है। जावा में पॉलीमॉर्फिज्म अवधारणा के अनुसार, ऑब्जेक्ट के कई अलग-अलग रूप हो सकते हैं। ऑब्जेक्ट रूपों को कंपाइल टाइम और रन टाइम पर हल किया जा सकता है। यदि मेथड कॉल और मेथड कार्यान्वयन के बीच लिंकिंग कंपाइल टाइम पर हल हो जाती है तो हम इसे स्टेटिक बाइंडिंग कहते हैं या यदि यह रन टाइम पर हल होती है तो यह डायनामिक बाइंडिंग है। डायनामिक बाइंडिंग बाइंडिंग को हल करने के लिए ऑब्जेक्ट का उपयोग करता है लेकिन स्टेटिक बाइंडिंग क्लास के प्रकार और फील्ड का उपयोग करता है।

क्र. सं. मुख्य बिंदु स्टेटिक बाइंडिंग डायनामिक बाइंडिंग
1 बेसिक यह कंपाइल टाइम पर हल होता है यह रन टाइम पर हल होता है
2 हल करने का तंत्र स्टेटिक बाइंडिंग क्लास के प्रकार और फील्ड का उपयोग करता है डायनामिक बाइंडिंग बाइंडिंग को हल करने के लिए ऑब्जेक्ट का उपयोग करता है
3 उदाहरण ओवरलोडिंग स्टेटिक बाइंडिंग का एक उदाहरण है मेथड ओवरराइडिंग डायनामिक बाइंडिंग का उदाहरण है
4 मेथड के प्रकार प्राइवेट, फाइनल और स्टेटिक मेथड और वेरिएबल स्टेटिक बाइंडिंग का उपयोग करते हैं वर्चुअल मेथड डायनामिक बाइंडिंग का उपयोग करते हैं

स्टेटिक और डायनामिक बाइंडिंग का उदाहरण

public class FastFood {
    public void create() {
        System.out.println("Creating in FastFood class");
    }
}
public class Pizza extends FastFood {
    public void create() {
        System.out.println("Creating in Pizza class");
    }
}
public class Main {
    public static void main(String[] args) {
        FastFood fastFood = new FastFood();
        fastFood.create();
        // Dynamic binding
        FastFood pza = new Pizza();
        pza.create();
    }
}
  1. - जावा में Iterator और Enumeration के बीच अंतर

    Iterator और Enumeration दोनों कलेक्शन से एलिमेंट्स को ट्रैवर्स और एक्सेस करने के लिए कर्सर हैं। वे दोनों कलेक्शन फ्रेमवर्क से संबंधित हैं। Enumeration JDK 1.0 में जोड़ा गया था और Iterator JDK 1.2 वर्जन में कलेक्शन फ्रेमवर्क में जोड़ा गया। Enumeration कलेक्शन में स्ट्रक्चरल चेंज नहीं कर सकता क्योंकि

  1. - Java में ArrayList और HashSet के बीच अंतर

    HashSet और ArrayList दोनों Java कलेक्शन फ्रेमवर्क के सबसे महत्वपूर्ण क्लासेस में से कुछ हैं।ArrayList और HashSet के बीच महत्वपूर्ण अंतर निम्नलिखित हैं।क्रमांकमुख्य बिंदुArrayListHashSet1कार्यान्वयनArrayList लिस्ट इंटरफेस का कार्यान्वयन है।दूसरी ओर HashSet सेट इंटरफेस का कार्यान्वयन है।2आंतरिक कार्या

  1. - Java में Static Binding और Dynamic Binding

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