स्थैतिक चर Java
- स्थिर चर
- स्थिर तरीके
- कोड के स्थैतिक ब्लॉक.
आइए सबसे पहले स्थैतिक चरों और स्थैतिक विधियों पर नजर डालें।
स्थैतिक चर क्या है? Java?
स्थैतिक चर Java वह चर है जो क्लास से संबंधित है और निष्पादन की शुरुआत में केवल एक बार आरंभ किया जाता है। यह एक चर है जो क्लास से संबंधित है और ऑब्जेक्ट (उदाहरण) से नहीं। स्टेटिक चर केवल एक बार, निष्पादन की शुरुआत में आरंभ किए जाते हैं। इन चरों को किसी भी उदाहरण चर के आरंभीकरण से पहले आरंभ किया जाएगा।
- क्लास के सभी उदाहरणों द्वारा साझा की जाने वाली एकल प्रतिलिपि
- एक स्थिर चर को सीधे वर्ग नाम से एक्सेस किया जा सकता है और इसके लिए किसी ऑब्जेक्ट की आवश्यकता नहीं होती है
सिंटेक्स:
<class-name>.<variable-name>
स्टेटिक विधि क्या है? Java?
स्थैतिक विधि Java एक विधि है जो क्लास से संबंधित है न कि ऑब्जेक्ट से। एक स्थिर विधि केवल स्थिर डेटा तक पहुँच सकती है। यह एक विधि है जो क्लास से संबंधित है न कि ऑब्जेक्ट (उदाहरण) से। एक स्थिर विधि केवल स्थिर डेटा तक पहुँच सकती है। यह गैर-स्थिर डेटा तक नहीं पहुँच सकता है (आवृत्ति के चर).
- एक स्थैतिक विधि केवल अन्य स्थैतिक विधियों को ही कॉल कर सकती है तथा उससे किसी गैर-स्थैतिक विधि को कॉल नहीं किया जा सकता।
- एक स्थैतिक विधि को सीधे वर्ग नाम से एक्सेस किया जा सकता है और इसके लिए किसी ऑब्जेक्ट की आवश्यकता नहीं होती है
- एक स्थैतिक विधि किसी भी तरह से “this” या “super” कीवर्ड को संदर्भित नहीं कर सकती है
सिंटेक्स:
<class-name>.<method-name>
नोट: मुख्य विधि स्थिर है, क्योंकि किसी अनुप्रयोग को चलाने के लिए, किसी भी इन्स्टेन्शिएशन के होने से पहले, इसे सुलभ होना चाहिए।
आइये कुछ अभ्यास करके स्थैतिक कीवर्ड की बारीकियों को सीखें!
उदाहरण: स्थैतिक चर और विधियों को कैसे कॉल करें
चरण 1) निम्नलिखित कोड को संपादक में कॉपी करें
public class Demo{ public static void main(String args[]){ Student s1 = new Student(); s1.showData(); Student s2 = new Student(); s2.showData(); //Student.b++; //s1.showData(); } } class Student { int a; //initialized to zero static int b; //initialized to zero only when class is loaded not for each object created. Student(){ //Constructor incrementing static variable b b++; } public void showData(){ System.out.println("Value of a = "+a); System.out.println("Value of b = "+b); } //public static void increment(){ //a++; //} }
चरण 2) कोड को सेव और संकलित करें। कोड को इस प्रकार चलाएँ, जावा डेमो.
चरण 3) अपेक्षित आउटपुट नीचे दिखाया गया है
निम्नलिखित आरेख दिखाता है कि संदर्भ चर और ऑब्जेक्ट कैसे बनाए जाते हैं और विभिन्न उदाहरणों द्वारा स्थैतिक चर तक कैसे पहुँचा जाता है।
चरण 4) सिंटैक्स का उपयोग करके क्लास के बाहर से स्थिर चर तक पहुंचना संभव है क्लासनाम.चर_नाम. पंक्ति # 7 और 8 को अनकमेंट करें। सहेजें, संकलित करें और चलाएँ। आउटपुट देखें।
Value of a = 0 Value of b = 1 Value of a = 0 Value of b = 2 Value of a = 0 Value of b = 3
चरण 5) पंक्ति 25,26 और 27 को अनकमेंट करें। सहेजें, संकलित करें और चलाएं।
error: non-static variable a cannot be referenced from a static context a++;
चरण 6) त्रुटि = ? ऐसा इसलिए है क्योंकि इंस्टेंस वैरिएबल तक पहुंचना संभव नहीं है “a” जावा स्टैटिक क्लास विधि से “वेतन वृद्धि".
स्टेटिक ब्लॉक क्या है? Java?
RSI स्थिर ब्लॉक एक के अंदर बयान का एक ब्लॉक है Java क्लास जो तब निष्पादित होगी जब क्लास को पहली बार लोड किया जाएगा JVM. एक स्थैतिक ब्लॉक स्थैतिक डेटा सदस्यों को आरंभ करने में मदद करता है, ठीक उसी तरह जैसे कंस्ट्रक्टर इंस्टेंस सदस्यों को आरंभ करने में मदद करते हैं।
class Test{ static { //Code goes here } }
निम्नलिखित प्रोग्राम जावा स्टैटिक ब्लॉक का उदाहरण है।
उदाहरण: स्थैतिक ब्लॉक तक कैसे पहुँचें
public class Demo { static int a; static int b; static { a = 10; b = 20; } public static void main(String args[]) { System.out.println("Value of a = " + a); System.out.println("Value of b = " + b); } }
आपको प्रोग्राम का निम्नलिखित आउटपुट मिलेगा.
Value of a = 10 Value of b = 20