स्थिर और गैर स्थैतिक पद्धति के बीच का अंतर

Anonim

स्थिर बनाम गैर स्थिर विधि

एक विधि एक निश्चित कार्य करने के लिए किए गए बयानों की एक श्रृंखला है। तरीके इनपुट ले सकते हैं और आउटपुट तैयार कर सकते हैं। स्थिर और गैर स्थिर तरीके ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग भाषाओं में मौजूद दो प्रकार के तरीकों हैं। एक स्थिर विधि एक विधि है जो कक्षा से जुड़ी हुई है। किसी विधि से संबद्ध एक विधि को एक गैर स्थिर (उदाहरण) विधि कहा जाता है ऑब्जेक्ट ओरिएंटेड भाषाओं में, ऑब्जेक्ट्स में संग्रहीत डेटा पर कार्य करने के लिए विधियों का उपयोग तंत्र के रूप में किया जाता है।

एक स्थैतिक विधि क्या है?

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

पब्लिक क्लास मायक्लास { सार्वजनिक स्थिर शून्य माइस्टाटिकमथ () { // स्थिर विधि का कोड } }

ऊपर परिभाषित स्थैतिक विधि को निम्न के रूप में कहा जा सकता है कि यह किस वर्ग के नाम से है

MyClass। MyStaticMethod ();

ध्यान देने योग्य एक महत्वपूर्ण बात यह है कि स्थैतिक तरीके केवल स्थैतिक सदस्यों तक पहुंच सकते हैं

एक गैर स्थैतिक विधि क्या है?

एक गैर स्थैतिक विधि या एक उदाहरण विधि एक विधि है जो कक्षा में एक ऑब्जेक्ट के साथ जुड़ा हुआ है। इसलिए, गैर स्थैतिक तरीकों को उस श्रेणी के ऑब्जेक्ट का उपयोग करके कहा जाता है जिसमें विधि परिभाषित होती है। एक गैर स्थिर विधि गैर स्थिर सदस्यों के साथ-साथ कक्षा के स्थैतिक सदस्यों तक भी पहुंच सकती है। जब एक गैर स्थिर विधि कहा जाता है, तो कई ऑब्जेक्ट ओरिएंटेड भाषाओं में (जैसे कि C ++, C #, Java), उस विधि को लागू करने वाला ऑब्जेक्ट एक अन्तर्निहित तर्क के रूप में पारित किया जाता है (इसे 'यह' संदर्भ कहा जाता है)। इसलिए, विधि के अंदर इस कीवर्ड को ऑब्जेक्ट को संदर्भित करने के लिए इस्तेमाल किया जा सकता है जिसे विधि कहा जाता है। निम्नलिखित जावा में एक उदाहरण विधि को परिभाषित करने का एक उदाहरण है

सार्वजनिक वर्ग के मायक्लास { सार्वजनिक शून्य मेरा इन्स्टेंस मोड () { // उदाहरण के विधि का कोड } }

ऊपर परिभाषित उदाहरण विधि हो सकता है जिसे इस वर्ग के किसी ऑब्जेक्ट का उपयोग करने के लिए कहा जाता है

मायक्लस ओजमी क्लास = नया माइक्लास ();

objMyClass। MyInstanceMethod ();

स्थिर और गैर स्थैतिक पद्धति के बीच अंतर क्या है?

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