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

जावा में स्थिर और गैर-स्थिर विधियों के बीच अंतर

एक जावा विधि बयानों का एक संग्रह है जिसे एक ऑपरेशन करने के लिए एक साथ समूहीकृत किया जाता है। जब आप System.out.println() विधि को कॉल करते हैं, उदाहरण के लिए, सिस्टम वास्तव में कंसोल पर एक संदेश प्रदर्शित करने के लिए कई कथन निष्पादित करता है।

स्थिर विधि

एक स्थिर विधि को एक वर्ग विधि भी कहा जाता है और यह कक्षा की सभी वस्तुओं में आम है और इस विधि को वर्ग के नाम का उपयोग करके भी पहुँचा जा सकता है।

गैर स्थैतिक विधि

किसी वर्ग की कोई भी विधि जो स्थिर नहीं है, उसे गैर-स्थैतिक विधि या एक उदाहरण विधि कहा जाता है।

स्थैतिक और गैर-स्थिर विधि के बीच महत्वपूर्ण अंतर निम्नलिखित हैं।

वरिष्ठ। नहीं. कुंजी स्थिर नॉन-स्टेटिक
1 पहुंच एक स्थिर विधि केवल स्थिर सदस्यों तक पहुंच सकती है और गैर-स्थिर सदस्यों तक नहीं पहुंच सकती। एक गैर-स्थैतिक विधि स्थिर और गैर-स्थिर दोनों सदस्यों तक पहुंच सकती है।
2 बाध्यकारी स्थिर विधि कंप्लीट टाइम बाइंडिंग या अर्ली बाइंडिंग का उपयोग करती है। नॉन-स्टेटिक विधि रन टाइम बाइंडिंग या डायनेमिक बाइंडिंग का उपयोग करती है।
3 ओवरराइडिंग संकलन समय बाध्यकारी होने के कारण एक स्थिर विधि को ओवरराइड नहीं किया जा सकता है। गतिशील बाध्यकारी होने के कारण एक गैर-स्थिर विधि को ओवरराइड किया जा सकता है।
4 स्मृति आवंटन स्थिर विधि कम जगह घेरती है और स्मृति आवंटन एक बार होता है। एक गैर-स्थिर विधि अधिक स्थान घेर सकती है। मेमोरी आवंटन तब होता है जब विधि को लागू किया जाता है और एक बार विधि पूरी तरह से निष्पादित होने के बाद मेमोरी को हटा दिया जाता है।
5 कीवर्ड स्थिर कीवर्ड का उपयोग करके एक स्थिर विधि घोषित की जाती है। किसी विशेष कीवर्ड के लिए सामान्य विधि की आवश्यकता नहीं है।

स्थिर बनाम गैर-स्थिर विधि का उदाहरण

JavaTester.java

public class JavaTester {
   public static void main(String args[]) {
      Tiger.roar();
      Tiger tiger = new Tiger();
      tiger.eat();
   }
}
class Tiger {
   public void eat(){
      System.out.println("Tiger eats");
   }
   public static void roar(){
      System.out.println("Tiger roars");
   }
}

आउटपुट

Tiger roars
Tiger eats

  1. जावा में पेंट () विधि और रिपेंट () विधि के बीच अंतर क्या हैं?

    पेंट() और रीपेंट() पेंट (): यह विधि इस घटक को पेंट करने के लिए निर्देश रखती है। जावा स्विंग में, हम पेंट कॉल के रूप में पेंट () विधि के बजाय पेंटकंपोनेंट () विधि को बदल सकते हैं पेंटबॉर्डर (), पेंटकंपोनेंट () और पेंटचिल्ड्रेन () तरीके। हम इस विधि को सीधे कॉल नहीं कर सकते इसके बजाय हम repaint() . क

  1. जावा में आयात और स्थिर आयात विवरण के बीच अंतर क्या हैं?

    हम एक आयात विवरण का उपयोग कर सकते हैं किसी विशेष पैकेज की कक्षाएं और इंटरफ़ेस आयात करने के लिए . जब भी हम इम्पोर्ट स्टेटमेंट का उपयोग कर रहे होते हैं तो पूरी तरह से योग्य नाम . का उपयोग करने की आवश्यकता नहीं होती है और हम सीधे संक्षिप्त नाम . का उपयोग कर सकते हैं . हम स्थिर आयात . का उपयोग कर सकते

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

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