एक जावा विधि बयानों का एक संग्रह है जिसे एक ऑपरेशन करने के लिए एक साथ समूहीकृत किया जाता है। जब आप 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