या लेखात आपण पाहू: जावा मध्ये स्थिर आणि नॉन-स्टॅटिक पद्धतींमध्ये फरक, जावा नवशिक्यांसाठी वारंवार विचारले जाणारे प्रश्न. खरं तर, समज स्थिर की ही प्रोग्रामिंगच्या मूलभूत गोष्टींपैकी एक आहे, सुदैवाने ती जावा प्रोग्रामिंग भाषेत चांगली परिभाषित आहे. अ स्थिर जावा मधील पद्धत वर्गाशी संबंधित आहे, याचा अर्थ आपण वर्गाचे नाव वापरून त्या पद्धतीला कॉल करू शकता, उदाहरणार्थ Arrays.equals (), आपल्याला या पद्धतीमध्ये प्रवेश करण्यासाठी ऑब्जेक्ट तयार करण्याची आवश्यकता नाही, जी आपल्याला नॉन -स्टॅटिक क्लास पद्धतीमध्ये प्रवेश करण्यासाठी करणे आवश्यक आहे.

स्थिर पद्धतीचा संकलक different द्वारे वेगळा उपचार केला जातो JVM: नॉन-स्टॅटिक पद्धतींपेक्षा, संकलित वेळी स्थिर पद्धती सक्षम केल्या जातात, नॉन-स्टॅटिक मेथड सक्तीच्या विरोधात, जे स्टार्टअपच्या वेळी होते.

त्याचप्रमाणे, आपण स्थिर संदर्भात नॉन-स्टॅटिक सदस्यांमध्ये प्रवेश करू शकत नाही, याचा अर्थ असा की आपण स्थिर पद्धतींमध्ये नॉन -स्टॅटिक व्हेरिएबल्स वापरू शकत नाही, आपण स्टॅटिकमधून नॉन -स्टॅटिक पद्धतींना कॉल करू शकत नाही, हे सर्व संकलन वेळ त्रुटीकडे नेईल.

स्थिर आणि नॉन-स्टॅटिक पद्धतींमधील महत्त्वपूर्ण फरकांव्यतिरिक्त, आम्ही या जावा ट्युटोरियलमध्ये कोडच्या उदाहरणासह काही मुद्दे देखील पाहू जे कृतीमधील काही फरक स्पष्ट करते.

तसे, स्थिर पद्धतीवरील हा दुसरा लेख आहे. पहिल्या लेखात आम्ही त्याबद्दल शिकलो जावा मध्ये स्थिर पद्धत वापरताना

जावा मध्ये स्थिर विरुद्ध नॉन-स्टॅटिक पद्धत

चला स्वतःच वापरलेल्या जावा प्रोग्रामिंग भाषेतील स्थिर “नॉन-स्टॅटिक पद्धती” मधील काही फरक पाहू.

1) मला वाटते की त्यांच्यातील पहिला և मुख्य फरक म्हणजे ऑब्जेक्ट तयार केल्याशिवाय त्याला स्थिर पद्धत म्हटले जाऊ शकते, उदाहरणार्थ Collections.sort (). यामुळे स्थिर पद्धत उपयुक्त बनते, आणि जावामध्ये नॉन-स्टॅटिक पद्धतीला कॉल करण्यासाठी, आपल्याला त्यास एक विषय बनवणे आवश्यक आहे. काही डिझाइन उदाहरणांवर स्थिर पद्धती देखील उपयुक्त आहेत, यासह: कारखाना: आणि सिंगलटन.

2) आपण नॉन-स्टॅटिक व्हेरिएबल जावाच्या कोणत्याही स्थिर पद्धतीमध्ये लॉग इन करू शकत नाही, परंतु उलट ठीक आहे, म्हणजे आपण लॉग इन करू शकता स्थिर चल किंवा वेळ त्रुटी संकलित न करता स्थिर पद्धतीपासून स्थिर पद्धतीवर कॉल करा.

3) स्थिर आणि नॉन-स्टॅटिक पद्धतींमध्ये हा फरक आहे आपण जावा मधील स्थिर पद्धतीकडे दुर्लक्ष करू शकत नाही. ते स्थिर कनेक्शन वापरून संकलनादरम्यान जोडलेले असतात. किंवा आपण जावामध्ये लपलेली पद्धत म्हणून ओळखल्या जाणाऱ्या उपवर्गात एक समान स्थिर पद्धत तयार करू शकता.

4) स्थिर पद्धती वर्ग पद्धती म्हणून ओळखल्या जातात, जर तुम्ही जावा मध्ये स्थिर पद्धत समक्रमित केली तर ती नॉन-स्टॅटिक पद्धतींपेक्षा भिन्न मॉनिटरद्वारे लॉक केली जातात, उदाहरणार्थ, दोन्ही स्थिर և नॉन-स्टॅटिक पद्धती वेगवेगळ्या मॉनिटर्सचा वापर करून लॉक केल्या जातात जावा मध्ये, և म्हणूनच जावा मध्ये एक गंभीर चूक म्हणजे स्थिर-नॉन-स्टॅटिक पद्धती जावा मध्ये संसाधने सामायिक करणे.

5) स्थिर पद्धती सामान्यतः उपयुक्त धड्यांमध्ये वापरल्या जातात, उदा. java.util.H संग्रह किंवा: java.util.Ararays:, कारण त्यांना प्रवेश करणे सोपे आहे कारण त्यांना ऑब्जेक्टची आवश्यकता नाही. हे स्थिर पद्धतीच्या सर्वात लोकप्रिय उदाहरणांपैकी एक आहे मुख्य पद्धत, जे जावा अनुप्रयोगांसाठी प्रवेश बिंदू म्हणून कार्य करते.

आपण त्यांना नंतर पाहू शकता जावा अभ्यासक्रम आणि पुस्तके स्थिर և नॉन-स्टॅटिक सारख्या मूलभूत जावा संकल्पनांबद्दल अधिक जाणून घ्या.

जावा मध्ये स्थिर वि नॉन -स्टॅटिक पद्धत – उदाहरण:

येथे काही हायलाइट करण्यासाठी जावा प्रोग्राम आहे जावा मध्ये स्थिर आणि नॉन-स्टॅटिक पद्धतींमध्ये फरक :

आयात org.slf4j.Logger:;

आयात org.slf4j.LoggerFactory:;

/ **

* जावा प्रोग्राम स्थिर आणि नॉन-स्टॅटिक पद्धतींमध्ये काही फरक दाखवण्यासाठी.

*

* लेखक http://javarevisited.blogspot.com:

* /

सार्वजनिक: श्रेणी: StaticMethodTest: {

खाजगी: स्थिर s: पर्याय;

खाजगी: स्ट्रिंगचे नाव;

खाजगी: स्थिर अंतिम: लॉगर लॉगर = लॉगरgetLogger:(StaticMethodTest.श्रेणी:);

सार्वजनिक: स्थिर रिक्त मुख्य:(वायर चेन[]) {

// आपण ऑब्जेक्ट तयार न करता थेट स्थिर पद्धतीवर कॉल करू शकता

StaticMethodTest.स्थिर पद्धत();

// जावामध्ये नॉन-स्टॅटिक मेहतोड कॉल करण्यासाठी आपल्याला ऑब्जेक्टची आवश्यकता आहे

StaticMethodTest myObject =: नवीन: StaticMethodTest ();

myObject.नॉन-स्टॅटिक पद्धत();

}

सार्वजनिक: रिक्त नॉन-स्टॅटिक पद्धत() {

लाकूडतोड करणारामाहिती:(“मी जावा मध्ये एक नॉन-स्टॅटिक पद्धत आहे”);

// आपण नॉन-स्टॅटिक पद्धतीमध्ये स्थिर व्हेरिएबलमध्ये प्रवेश करू शकता

लाकूडतोड करणारामाहिती:(“नॉन-स्टॅटिक पद्धतीची स्थिर आवृत्ती” + आवृत्ती);

}

सार्वजनिक: स्थिर रिक्त स्थिर पद्धत() {

लाकूडतोड करणारामाहिती:(“मी जावा मध्ये एक स्थिर पद्धत आहे, आवृत्ती.” + आवृत्ती);

// System.out.println (नाव); // वेळेची चूक करा

}

}

परिणाम:

201307:01: 04::10::08:,029: 0: [main] माहिती: StaticMethodTest: – मी स्थिर जावा मध्ये पद्धत, आवृत्ती. 0:

201307:01: 04::10::08:,060: 31: [main] माहिती: StaticMethodTest: – मी माणूस नाही स्थिर जावा मध्ये पद्धत

201307:01: 04::10::08:,060: 31: [main] माहिती: StaticMethodTest: स्थिर नॉन पासून आवृत्ती स्थिर पद्धत: 0:

हे सर्व जोडलेले आहे जावा मध्ये स्थिर आणि नॉन-स्टॅटिक पद्धतींमध्ये फरक. आपण पाहू शकता की स्थिर संदर्भात नॉन-स्टॅटिक सदस्य उपलब्ध नाहीत, स्थिर पद्धतीला कॉल करण्यापूर्वी և आपण an ऑब्जेक्ट तयार करणे आवश्यक आहे, म्हणून स्थिर पद्धती उपयुक्त पद्धत म्हणून अधिक योग्य आहेत, उदा. Arrays.deepEquals ().