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

संकलन-समय बहुरूपता और रनटाइम बहुरूपता के बीच अंतर

बहुरूपता सबसे महत्वपूर्ण ओओपी अवधारणाओं में से एक है। यह एक अवधारणा है जिसके द्वारा हम एक ही कार्य को कई तरीकों से कर सकते हैं। बहुरूपता दो प्रकार के होते हैं एक है संकलन-समय बहुरूपता और दूसरा है रन-टाइम बहुरूपता।

मेथड ओवरलोडिंग कंपाइल टाइम पॉलीमॉर्फिज्म का उदाहरण है और मेथड ओवरराइडिंग रन-टाइम पॉलीमॉर्फिज्म का उदाहरण है।

<वें शैली ="चौड़ाई:11.0204%; टेक्स्ट-संरेखण:केंद्र;">कुंजी <टीडी>

इसे स्थैतिक बंधन के माध्यम से प्राप्त किया जा सकता है
Sr. नहीं. संकलन-समय बहुरूपता रनटाइम बहुरूपता
1
मूलभूत
संकलन समय बहुरूपता का अर्थ है संकलन समय पर बाध्यकारी हो रहा है
असमय बहुरूपता जहां रन टाइम पर हमें पता चला कि कौन सी विधि लागू करने जा रही है
2
स्थिर/गतिशील
बाइंडिंग
इसे डायनेमिक बाइंडिंग के माध्यम से प्राप्त किया जा सकता है
4.
विरासत
विरासत शामिल नहीं है
विरासत शामिल है
5
उदाहरण
विधि ओवरलोडिंग संकलन समय बहुरूपता का एक उदाहरण है
विधि ओवरराइडिंग रनटाइम बहुरूपता का एक उदाहरण है

संकलन-समय बहुरूपता का उदाहरण

public class Main {
   public static void main(String args[]) {
      CompileTimePloymorphismExample obj = new CompileTimePloymorphismExample();
      obj.display();
      obj.display("Polymorphism");
   }
}
class CompileTimePloymorphismExample {
   void display() {
      System.out.println("In Display without parameter");
   }
   void display(String value) {
      System.out.println("In Display with parameter" + value);
   }
}

रनटाइम बहुरूपता का उदाहरण

public class Main {
   public static void main(String args[]) {
      RunTimePolymorphismParentClassExample obj = new RunTimePolymorphismSubClassExample();
      obj.display();
   }
}

class RunTimePolymorphismParentClassExample {
   public void display() {
      System.out.println("Overridden Method");
   }
}

public class RunTimePolymorphismSubClassExample extends RunTimePolymorphismParentExample {

   public void display() {
      System.out.println("Overriding Method");
   }
}

  1. जावा में सीरियलाइज़ेशन और एक्सटर्नलाइज़ेशन के बीच अंतर

    सीरियलाइज़ेशन और एक्सटर्नलाइज़ेशन दोनों किसी ऑब्जेक्ट को स्ट्रीम बाइट में बदलने और डेटाबेस या मेमोरी में बाइट स्ट्रीम को स्टोर करने की प्रक्रियाएँ हैं। java.io.Serializable इंटरफ़ेस को लागू करने वाले वर्ग को क्रमबद्ध किया जा सकता है। दूसरी ओर, आवेदन में आवश्यकता के आधार पर कस्टम क्रमांकन के लिए उपयो

  1. जावा में इटरेटर और एन्यूमरेशन के बीच अंतर

    इटरेटर और एन्यूमरेशन दोनों ही संग्रह से किसी तत्व को पार करने और एक्सेस करने के लिए कर्सर हैं। वे दोनों संग्रह ढांचे से संबंधित हैं। संग्रह ढांचे में JDK1.0 और Iterator में JDK.1.2 संस्करण में गणना जोड़ी गई थी। एन्यूमरेशन संग्रह में संरचनात्मक परिवर्तन नहीं कर सकता क्योंकि इसमें संग्रह में तत्व तक

  1. जावा में ऐरेलिस्ट और हैशसेट के बीच अंतर

    हैशसेट और ऐरेलिस्ट दोनों ही जावा संग्रह ढांचे के कुछ सबसे महत्वपूर्ण वर्ग हैं। ArrayList और हैशसेट के बीच महत्वपूर्ण अंतर निम्नलिखित हैं। सीनियर। नहीं. कुंजी ऐरेलिस्ट हैशसेट 1 कार्यान्वयन ArrayList सूची इंटरफ़ेस का कार्यान्वयन है। दूसरी ओर हैशसेट एक सेट इंटरफ़ेस का कार्यान्वयन है। 2 आंतरिक क