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

जावा 8 में डिफ़ॉल्ट और स्थिर इंटरफ़ेस विधि के बीच अंतर।

Oracle के Javadocs के अनुसार -

डिफ़ॉल्ट विधियां आपको अपने पुस्तकालयों के इंटरफेस में नई कार्यक्षमता जोड़ने में सक्षम बनाती हैं और उन इंटरफेस के पुराने संस्करणों के लिए लिखे गए कोड के साथ बाइनरी संगतता सुनिश्चित करती हैं।

एक स्थिर विधि एक ऐसी विधि है जो उस वर्ग से जुड़ी होती है जिसमें इसे किसी वस्तु के बजाय परिभाषित किया जाता है। कक्षा का प्रत्येक उदाहरण अपने स्थिर तरीकों को साझा करता है।

इंटरफ़ेस में स्टेटिक विधि इंटरफ़ेस का हिस्सा है जिसे लागू नहीं किया जा सकता है या इसे ओवरराइड नहीं किया जा सकता है जबकि क्लास डिफ़ॉल्ट विधि को ओवरराइड कर सकता है।

<वें शैली ="चौड़ाई:9.796%; पाठ-संरेखण:केंद्र;">कुंजी
Sr. नहीं. स्टेटिक इंटरफेस मेथड डिफ़ॉल्ट विधि
1
मूलभूत
यह एक स्थिर विधि है जो केवल इंटरफ़ेस से संबंधित है। हम इस पद्धति के कार्यान्वयन को इंटरफ़ेस में ही लिख सकते हैं
यह डिफ़ॉल्ट कीवर्ड वाली एक विधि है और वर्ग इस पद्धति को ओवरराइड कर सकता है
2
विधि आह्वान
स्थैतिक विधि केवल इंटरफ़ेस वर्ग पर लागू हो सकती है कक्षा पर नहीं।
इसे इंटरफ़ेस के साथ-साथ कक्षा पर भी लागू किया जा सकता है
3
विधि का नाम
इंटरफ़ेस और कार्यान्वयन वर्ग, दोनों में एक दूसरे को ओवरराइड किए बिना एक ही नाम के साथ स्थिर विधि हो सकती है।
हम कक्षा को लागू करने में डिफ़ॉल्ट विधि को ओवरराइड कर सकते हैं
4.
केस का प्रयोग करें
इसका उपयोग उपयोगिता पद्धति के रूप में किया जा सकता है
इसका उपयोग सभी कार्यान्वयन वर्गों में सामान्य कार्यक्षमता प्रदान करने के लिए किया जा सकता है

इंटरफ़ेस में डिफ़ॉल्ट और स्थिर विधि का उदाहरण

public interface DefaultStaticExampleInterface {
   default void show() {
      System.out.println("In Java 8- default method - DefaultStaticExampleInterface");
   }
   static void display() {
      System.out.println("In DefaultStaticExampleInterface I");
   }
}
public class DefaultStaticExampleClass implements DefaultStaticExampleInterface {
}
public class Main {
   static void main(String args[]) {
      // Call interface static method on Interface
      DefaultStaticExampleInterface.display();
      DefaultStaticExampleClass defaultStaticExampleClass = new DefaultStaticExampleClass();
     
      // Call default method on Class
      defaultStaticExampleClass.show();
   }
}

  1. जावा में थ्रेड और रननेबल के बीच अंतर

    निष्पादन का एक नया धागा बनाने के दो तरीके हैं। एक वर्ग को थ्रेड वर्ग का उपवर्ग घोषित करना है। इस उपवर्ग को थ्रेड क्लास की रन विधि को ओवरराइड करना चाहिए। उपवर्ग का एक उदाहरण तब आवंटित और शुरू किया जा सकता है। थ्रेड बनाने का दूसरा तरीका एक वर्ग घोषित करना है जो रननेबल इंटरफ़ेस को लागू करता है। वह वर्

  1. जावा में कतार इंटरफ़ेस की झांकना (), मतदान () और निकालें () विधि के बीच अंतर?

    यह एक संग्रह का प्रतिनिधित्व करता है जिसे प्रसंस्करण से पहले डेटा रखने के लिए इंडेंट किया जाता है। यह फर्स्ट-इन-फर्स्ट-आउट (फीफो) प्रकार की व्यवस्था है। कतार में डाला गया पहला तत्व उसमें से निकाला गया पहला तत्व है। दिखाना () विधि यह विधि वर्तमान कतार के शीर्ष पर वस्तु को बिना हटाए लौटाती है। यदि कत

  1. अमूर्त वर्ग और इंटरफ़ेस के बीच अंतर

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