' निजी “जावा में कीवर्ड एक विशेष कार्यक्षमता को सीमित दायरे में सीमित करने में महत्वपूर्ण भूमिका निभाता है। यह ऐसा है कि यह आवश्यकता के अनुसार चयनात्मक डेटा को गोपनीय बनाने में विकासकर्ता की सहायता करता है। इसके अलावा, यह 'वैरिएबल्स', 'फ़ंक्शंस', 'क्लास कंस्ट्रक्टर्स' और 'क्लास' सहित कई क्लास फ़ंक्शंस से जुड़ा हो सकता है।
यह ब्लॉग जावा 'निजी' कीवर्ड को लागू करने के बारे में विस्तार से बताएगा।
जावा 'निजी' कीवर्ड क्या है?
' निजी ” जावा में कीवर्ड वेरिएबल्स, मेथड्स और कंस्ट्रक्टर्स के लिए एक एक्सेस मॉडिफायर है, जो उन्हें केवल घोषित क्लास के भीतर ही एक्सेस करने की अनुमति देता है।
महत्वपूर्ण विचार
- निजी पहुंच संशोधक केवल कक्षा के भीतर ही पहुंच योग्य/दृश्यमान है।
- 'निजी' कीवर्ड बाहरी वर्ग या इंटरफ़ेस को आवंटित नहीं किया जा सकता।
- यदि एक क्लास कंस्ट्रक्टर को 'प्राइवेट' के रूप में असाइन किया गया है, तो उस क्लास का उदाहरण क्लास के बाहर से नहीं बनाया जा सकता है।
- यदि एक 'निजी' संशोधक किसी भी विधि को आवंटित किया जाता है, तो उस विधि को सभी प्रकार के एक्सेस संशोधकों के माध्यम से उप-वर्ग में ओवरराइड किया जा सकता है। हालाँकि, एक 'निजी' विधि को अभी भी कक्षा के बाहर से लागू नहीं किया जा सकता है।
उदाहरण 1: जावा में क्लास वेरिएबल के साथ 'प्राइवेट' कीवर्ड को लागू करना
यह उदाहरण 'निजी' कीवर्ड को एक वर्ग चर के साथ लागू करता है, जिससे इसे (चर) को कक्षा के बाहर से एक्सेस करने से रोका जा सकता है:
वर्ग निजी वर्ग {
निजी अंतर मान = 2 ;
}
सार्वजनिक वर्ग निजी {
सार्वजनिक स्थैतिक शून्य मुख्य ( स्ट्रिंग तर्क [ ] ) {
प्रिविक्लास एक्स = नया प्रिविक्लास ( ) ;
System.out.println ( 'मूल्य ->' +x.मूल्य ) ;
} }
उपरोक्त कोड स्निपेट में:
- नामक एक वर्ग को परिभाषित करें privclass ”।
- इसकी परिभाषा में, 'निजी' कीवर्ड को 'कथित' के साथ संबद्ध करें int यहाँ ' चर।
- में ' मुख्य() 'विधि,' का उपयोग करके एक क्लास ऑब्जेक्ट बनाएं नया 'कीवर्ड और' निजी वर्ग () ” कंस्ट्रक्टर।
- अंत में, निर्मित वस्तु के माध्यम से निजी चर का आह्वान करें।
उत्पादन
इस आउटपुट में, यह देखा जा सकता है कि चूंकि चर को 'निजी' के रूप में आवंटित किया गया है, इसलिए घोषित अपवाद का सामना करना पड़ रहा है।
समाधान
इस त्रुटि से निपटने के लिए, केवल 'निजी' कीवर्ड को चर के साथ छोड़ दें और इसे (चर) उचित रूप से लागू किया जाएगा:
उदाहरण 2: जावा में क्लास फंक्शन के साथ 'प्राइवेट' कीवर्ड को लागू करना
इस विशेष उदाहरण में, चर्चा किए गए कीवर्ड का उपयोग क्लास फ़ंक्शन के साथ किया जा सकता है, जिससे केवल कक्षा में इसका दायरा बना रहता है:
वर्ग निजी वर्ग {निजी शून्य प्रदर्शन आईडी ( ) {
System.out.println ( 'आईडी है -> 2' ) ;
} }
सार्वजनिक वर्ग निजी {
सार्वजनिक स्थैतिक शून्य मुख्य ( स्ट्रिंग तर्क [ ] ) {
प्रिविक्लास एक्स = नया प्रिविक्लास ( ) ;
x.displayId ( ) ;
} }
इस कोड ब्लॉक में:
- इसी तरह, वर्ग को परिभाषित करें और फ़ंक्शन घोषित करें ' प्रदर्शन आईडी () ” कहा गया संदेश प्रदर्शित करना।
- अब, 'में मुख्य() ” विधि, इसी तरह एक क्लास ऑब्जेक्ट बनाएं और परिभाषित फ़ंक्शन तक पहुंचने का प्रयास करें।
उत्पादन
इस परिणाम में, यह निहित किया जा सकता है कि परिभाषित 'निजी' फ़ंक्शन दिखाई नहीं दे रहा है, अर्थात 'में एक्सेस नहीं किया जा सकता है' मुख्य() ' तरीका।
समाधान
इस मामले में नकल से छुटकारा पाने के लिए, इसी तरह, फ़ंक्शन के साथ निर्दिष्ट 'निजी' कीवर्ड को छोड़ दें, जैसा कि दिखाया गया है:
उदाहरण 3: जावा में कक्षा के साथ 'निजी' कीवर्ड को लागू करना
इस विशेष उदाहरण में, चर्चा किए गए कीवर्ड को एक वर्ग के साथ लागू किया जा सकता है, जिससे वर्ग 'मुख्य' में प्रतिबंधित हो जाता है:
निजी वर्ग निजी वर्ग {privclass ( ) {
System.out.println ( 'यह निजी वर्ग है!' ) ;
}
शून्य प्रदर्शन आईडी ( ) {
System.out.println ( 'आईडी है -> 2' ) ;
} }
सार्वजनिक वर्ग निजी {
सार्वजनिक स्थैतिक शून्य मुख्य ( स्ट्रिंग तर्क [ ] ) {
प्रिविक्लास एक्स = नया प्रिविक्लास ( ) ;
x.displayId ( ) ;
} }
इस कोड के अनुसार, निम्न चरण लागू करें:
- सबसे पहले, संबद्ध करें ' निजी ” वर्ग के साथ कीवर्ड, जिससे इसका दायरा सीमित हो जाता है।
- अब, एक क्लास कंस्ट्रक्टर और क्रमशः बताए गए संदेशों को प्रदर्शित करने वाला एक फंक्शन बनाएं।
- में ' मुख्य() ” विधि, इसी तरह, एक क्लास ऑब्जेक्ट बनाएं और संचित फ़ंक्शन को कॉल करें।
उत्पादन
जैसा कि देखा गया है, परिभाषित वर्ग 'में दिखाई नहीं दे रहा है' मुख्य ”।
समाधान
इस परिदृश्य में सीमा से छुटकारा पाने के लिए, इसी प्रकार कक्षा के साथ जुड़े 'निजी' कीवर्ड को निम्नानुसार हटा दें:
हालाँकि, यदि क्लास कंस्ट्रक्टर को 'निजी' के रूप में आवंटित करने की आवश्यकता है, तो बस इसके साथ कीवर्ड निर्दिष्ट करें, इस प्रकार है:
यहाँ, यह निहित किया जा सकता है कि क्लास ऑब्जेक्ट बनाते समय क्लास कंस्ट्रक्टर को आमंत्रित करने पर, यह (कन्स्ट्रक्टर) अदृश्य / दुर्गम हो जाता है।
निष्कर्ष
' निजी ” जावा में कीवर्ड वेरिएबल्स, मेथड्स, कंस्ट्रक्टर्स आदि के लिए एक एक्सेस मॉडिफायर है जो उन्हें केवल घोषित क्लास के भीतर ही एक्सेस करने की अनुमति देता है। यह ऐसा है कि इस कीवर्ड से जुड़ी कार्यक्षमता को कक्षा के बाहर से लागू करने पर, यह एक त्रुटि लॉगिंग का परिणाम है। इस ब्लॉग ने जावा में 'निजी' कीवर्ड के उपयोग और कार्यान्वयन पर चर्चा की।