जावा में से बचने के लिए 10 गलतियाँ

जावा में से बचने के लिए 10 गलतियों - डमीज

जावा प्रोग्रामिंग में आम गलतियों को पकड़ने से पहले उन्हें पकड़ें। यहां आपके कोड में देखने के लिए दस चीजों की एक छोटी सूची है।

कैपिटल कैटलॉग डालते हैं, जहां वे हैं

जावा एक केस-संवेदी भाषा है, इसलिए आपको वास्तव में अपने पी एस और क्यू एस को हर दूसरे पत्र के साथ याद रखना होगा वर्णमाला का जैसा कि आप जावा प्रोग्राम बनाते हैं, ये ध्यान रखने के लिए यहां कुछ विवरण दिए गए हैं:

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

  • आपको यह भी सुनिश्चित करने की ज़रूरत है कि आपके पूरे कार्यक्रम में आपके द्वारा बनाए गए नामों को उसी तरह पूंजीकृत किया जाता है यदि आप एक myAccount चर घोषित करते हैं, तो आप इसे MyAccount, myaccount, या Myaccount के रूप में नहीं देख सकते हैं यदि आप चर नाम को दो अलग-अलग तरीकों से कैपिटल करते हैं, तो जावा सोचता है कि आप दो पूरी तरह से भिन्न चर का उल्लेख कर रहे हैं।

  • एक स्विच स्टेटमेंट से बाहर निकलना

यदि आप एक स्विच स्टेटमेंट से बाहर नहीं तोड़ते हैं, तो आप फॉल-थ्रू के माध्यम से गिर जाते हैं। उदाहरण के लिए, यदि कविता का मूल्य 3 है, तो निम्न कोड सभी तीन लाइनों को प्रिंट करता है - अंतिम निषेध, वह एक दर्द है, और इसमें कोई मस्तिष्क नहीं है।

स्विच (कविता) {मामला 3: बाहर प्रिंट ("आखिरी पराया,"); बाहर। println ("आखिरी निगाह,"); मामला 2: बाहर प्रिंट ("वह एक दर्द है,"); बाहर। println ("वह एक दर्द है,"); मामला 1: बाहर प्रिंट ("कोई मस्तिष्क नहीं है,"); बाहर। println ("कोई मस्तिष्क नहीं है,");}

 दोहरे बराबर चिह्न वाले मूल्यों की तुलना करना 

जब आप एक दूसरे के साथ दो मानों की तुलना करते हैं, तो आप एक डबल बराबर चिह्न का उपयोग करते हैं। रेखा

यदि (इनपुटनंबर == यादृच्छिक संख्या)

 सही है, लेकिन पंक्ति 

यदि (inputNumber = randomNumber)

 सही नहीं है 

जीयूआई में घटकों को जोड़ना

जावा फ्रेम के लिए यहां एक कन्स्ट्रक्टर है:

सार्वजनिक सिंपलफ्रेम () {जेबटन बटन = नया जेबटन (

 "धन्यवाद ..."  ); सेटटिटल ( "...  कोनी संतिस्टेबन  और ब्रायन दीवारों"  ); सेटलेआउट (नया फ्लो लेआउट ());  (बटन) को जोड़ने;  बटन दबाएं। addActionListener (this); setSize (300, 100); सेटिविसबल (सच्चे);}  जो भी आप करते हैं, जोड़ें विधि को कॉल मत भूलना इस कॉल के बिना, आप एक बटन बनाने के सभी काम पर जाते हैं, लेकिन बटन आपके फ्रेम पर दिखाई नहीं देता  घटनाओं को संभालने के लिए श्रोताओं को जोड़ना 

एक साधारण फ़्रेम का निर्माण करने के लिए पिछले अनुभाग के कोड पर फिर से देखें। यदि आप एक्शनलिस्टनर को जोड़ने के लिए कॉल भूल जाते हैं, तो आप बटन पर क्लिक करते समय कुछ भी नहीं होता है बटन पर क्लिक करने से दूसरी बार मदद नहीं मिलती।

आवश्यक कन्स्ट्रक्टरों को परिभाषित करना

जब आप एक कंस्ट्रक्टर को

सार्वजनिक तापमान (डबल संख्या)

के रूप में मानकों के साथ परिभाषित करते हैं, तो कंप्यूटर अब आपके लिए एक डिफ़ॉल्ट पैरालेबल कन्स्ट्रक्टर नहीं बनाता है। दूसरे शब्दों में, आप अब

 <कॉल नहीं कर सकते! -2 -> 

तापमान कक्ष टेम्पलेट = नया तापमान ();

जब तक आप स्पष्ट रूप से अपने खुद के पैरामीटरलेस तापमान कन्स्ट्रक्टर को परिभाषित नहीं करते
 गैर-स्थिर संदर्भ तय करना 

यदि आप निम्न कोड को संकलित करने का प्रयास करते हैं, तो आपको एक त्रुटि संदेश मिलता है:

वर्ग WillNotWork {String greeting = "Hello"; सार्वजनिक स्थिर शून्य मुख्य (स्ट्रिंग एल्ग्स []) {सिस्टम। बाहर। println (ग्रीटिंग);}}

आपको एक त्रुटि संदेश मिलता है क्योंकि मुख्य स्थिर है, लेकिन ग्रीटिंग स्थिर नहीं है

 

एक सरणी में सीमा के भीतर रहना

जब आप दस घटकों के साथ एक सरणी घोषित करते हैं, तो घटक के बीच 0 से 9 के सूचक होते हैं। दूसरे शब्दों में, यदि आप

int guests [ नया इंट [10];

तो अतिथि अतिथि [9] के मेहमानों के लिए मेहमानों [1], अतिथि [1], और इसी तरह, मेहमान लिखकर मेहमान के घटक का संदर्भ लें। आप मेहमानों को नहीं लिख सकते हैं [10], क्योंकि मेहमान सरणी के सूचक 10 के साथ कोई घटक नहीं है।

 नल संकेतों का आकलन करना 

इस पुस्तक के उदाहरणों को नलपॉइंटर एक्सेप्शन फेंकने की संभावना नहीं है, बल्कि वास्तविक जीवन जावा प्रोग्रामिंग में, आप हर समय अपवाद देखते हैं एक NullPointerException के बारे में आता है जब आप कोई ऐसी विधि कॉल करते हैं जो किसी ऑब्जेक्ट को वापस करने वाला है, लेकिन इसके बजाय विधि कुछ भी रिटर्न नहीं देती है यहां एक सस्ता उदाहरण है:

स्थिर जावा आयात करें लैंग। प्रणाली। बाहर; जावा आयात करें कब। फ़ाइल; वर्ग की सूचीमईफाइलें {सार्वजनिक स्थिर शून्य मुख्य (स्ट्रिंग अरिज []) {फ़ाइल फ़ाइल myFile = नई फ़ाइल (

" windows"

 ); स्ट्रिंग डायर [] = मायफ़ाइल सूची(); (स्ट्रिंग फ़ाइलनाम: डीआईआर) के लिए {out println (fileName);}}}  यह प्रोग्राम विंडो निर्देशिका में सभी फाइलों की एक सूची प्रदर्शित करता है  लेकिन क्या होता है अगर आप कुछ और खिड़कियों को बदलते हैं - ऐसा कुछ जो एक निर्देशिका के नाम का प्रतिनिधित्व नहीं करता है? 

फ़ाइल फ़ाइल myFile = नया फ़ाइल (

"और *% $!!"

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

इस प्रकार की आपदा से बचने के लिए, जावा के एपीआई दस्तावेज़ीकरण की जाँच करें। यदि आप एक ऐसी विधि बुला रहे हैं जो नल लौट सकती है, तो अपने प्रोग्राम में अपवाद-हैंडलिंग कोड जोड़ें। जावा की अपनी फ़ाइलों को खोजने में मदद करना आप जावा कोड संकलित कर रहे हैं, अपना खुद का व्यवसाय ध्यान में रखते हुए, जब कंप्यूटर आपको नोक्लाडेफ़फ़ाउंड एरर देता है सभी प्रकार की चीजें गलत हो सकती हैं, लेकिन संभावनाएं अच्छी हैं कि कंप्यूटर को एक विशेष जावा फ़ाइल नहीं मिल सकती है। इसे ठीक करने के लिए, आपको सही ढंग से सभी ग्रहों को संरेखित करना होगा:

आपकी परियोजना निर्देशिका में सभी जावा फाइलें होनी चाहिए, जिनके नाम आपके कोड में उपयोग किए जाते हैं

यदि आप नामित पैकेज का उपयोग करते हैं, तो आपकी प्रोजेक्ट डायरेक्टरी में उपनिर्देशिकाओं का नाम उचित होना चाहिए।

आपका क्लासपैथ ठीक से सेट होना चाहिए