A स्थैतिक विधि वर्ग से संबंधित है और एक गैर स्थैतिक विधि एक वर्ग की वस्तु से संबंधित है। स्थिर विधियों को सीधे कक्षा से एक्सेस किया जा सकता है, जबकि गैर-स्थैतिक विधियों (या इंस्टेंस विधियों जैसा कि मैं उन्हें कॉल करना चाहता हूं) को एक उदाहरण से एक्सेस किया जाना है।
एक विधि स्थिर बनाम गैर स्थैतिक कब होनी चाहिए?
A स्थैतिक विधि स्वयं वर्ग से संबंधित है और एक गैर-स्थैतिक (उर्फ उदाहरण) विधि उस वर्ग से उत्पन्न प्रत्येक वस्तु से संबंधित है। यदि आपका तरीका कुछ ऐसा करता है जो उसके वर्ग की व्यक्तिगत विशेषताओं पर निर्भर नहीं करता है, तो इसे स्थिर बनाएं (यह प्रोग्राम के पदचिह्न को छोटा कर देगा)।
आप एक गैर-स्थिर विधि का उपयोग कब करेंगे?
जावा में एक नॉन-स्टेटिक मेथड स्टैटिक मेथड्स और वेरिएबल्स को निम्नानुसार एक्सेस कर सकता है:
- एक नॉन-स्टेटिक मेथड क्लास का इंस्टेंस बनाए बिना किसी भी स्टैटिक मेथड को एक्सेस कर सकता है।
- एक नॉन-स्टेटिक मेथड क्लास का इंस्टेंस बनाए बिना किसी भी स्टैटिक वेरिएबल को एक्सेस कर सकता है क्योंकि स्टैटिक वेरिएबल क्लास से संबंधित है।
आपको स्थिर कार्यों का उपयोग कब करना चाहिए?
जब आप एक वैरिएबल रखना चाहते हैं जो हमेशा वर्ग की हर वस्तु के लिए समान मूल्य रखता है, हमेशा और हमेशा के लिए, इसे स्थिर बनाएं। यदि आपके पास ऐसी विधि है जो किसी आवृत्ति चर या आवृत्ति विधियों का उपयोग नहीं करती है, तो आपको शायद इसे स्थिर बनाना चाहिए।
स्थिर और स्थिर क्षेत्र में क्या अंतर है?
स्थिर चर या क्षेत्र वर्ग के हैं, न कि वर्ग के किसी वस्तु के। जब कक्षा रनटाइम पर लोड होती है तो एक स्थिर चर प्रारंभ होता है। गैर-स्थिर क्षेत्र किसी वस्तु के उदाहरण क्षेत्र हैं। उन्हें केवल ऑब्जेक्ट संदर्भ के माध्यम से एक्सेस या इनवोक किया जा सकता है।