गलतियों से बचने के 10 तरीके जब जावा के साथ आपका एंड्रॉइड ऐप प्रोग्रामिंग करते हुए

गलतियों से बचने के 10 तरीके जब जावा के साथ आपका एंड्रॉइड ऐप प्रोग्राम करते हैं - डमीज

हर कोई गलती करता है यह जीवन का एक सच्चाई है हालांकि, यदि आप यहां सलाह का पालन करते हैं, तो यह आपके जावा प्रोग्रामिंग का एक तथ्य नहीं होना चाहिए।

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

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

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

एक स्विच स्टेटमेंट से बाहर तोड़ना

यदि आप स्विच कथन से बाहर नहीं तोड़ते हैं, तो आप गिरते-फिरते हैं उदाहरण के लिए, यदि रोल का 7 मान है, तो निम्न कोड सभी तीन शब्द प्रिंट करता है - जीत , जारी रखें , और > खो : स्विच (रोल) {

मामला 7:

पाठदृश्य setText ( "जीत");

मामले 10:

TextView। setText ( "जारी रखें");

मामले 12:

पाठदृश्य setText ( "खो");

}

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

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

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

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

यदि (inputNumber = randomNumber)

सही नहीं है

घटनाओं को संभालने के लिए श्रोताओं को जोड़ना

जब उपयोगकर्ता कोई एनीमेशन समाप्त होने पर या जब कुछ और होता है, तब आप जानना चाहते हैं कि आप श्रोताओं को बनाते हैं:

सार्वजनिक वर्ग की मुख्य गतिविधि गतिविधि बढ़ाता है

लागू करता है सार्वजनिक वेल्यू ऑनक्लिक क्लिक करें (देखें दृश्य) {

... }

सार्वजनिक शून्य पर एनीमेशन एन्ड (एनिमेशन एनीमेशन) {

...

}

छवि विज़िव विजेट = नया छविदृश्य (यह);

विजेट।

setOnClickListener

(this);

...

अल्फा एनीमेशन एनीमेशन = नया अल्फा एनीमेशन (0 0 एफ, 1. 0 एफ); एनीमेशन। setAnimationListener

(this);

...

यदि आप

सेटऑनक्लिकलिस्ट को कॉल भूल जाते हैं, तो जब आप विजेट पर क्लिक करते हैं, तो कुछ भी नहीं होता हैविजेट पर क्लिक करने से दूसरी बार मदद नहीं मिलती आवश्यक कन्स्ट्रक्टरों को परिभाषित करना

जब आप एक निर्माता को पैरामीटर के साथ परिभाषित करते हैं, जैसा कि

सार्वजनिक तापमान (डबल संख्या) जावा अब आपके लिए एक डिफ़ॉल्ट पैरासेलेसर निर्माता नहीं बनाता है दूसरे शब्दों में, आप अब

तापमान के कमरे में कॉल कर सकते हैं टेम्पलेट = नया तापमान ();

जब तक आप स्पष्ट रूप से अपने खुद के पैरामीटरलेस

तापमान

कन्स्ट्रक्टर को परिभाषित नहीं करते।

गैर-स्थायी संदर्भों को ठीक करना

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

कक्षा विलनोटवर्क { स्ट्रिंग ग्रीटिंग = "हैलो";

स्थिर शून्य दिखाने () {

पाठदृश्य setText (अभिवादन);

}

}

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

शो

विधि स्थैतिक है, लेकिन

ग्रीटिंग

स्थिर नहीं है

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

इंट अतिथि [] = नया इंट [10]; आप

अतिथि

एरे के घटकों को

मेहमान [0]

,

मेहमान [1] लिखकर, और इसी तरह, सभी तरह से मेहमानों [9] । आप मेहमान [10] नहीं लिख सकते हैं, क्योंकि अतिथि सरणी के सूचक 10 के साथ कोई घटक नहीं है। नल संकेतों का अनुमान लगाना NullPointerException के बारे में आता है जब आप एक अभिव्यक्ति पर एक विधि कॉल है कि कोई "वैध" मूल्य है यहां एक उदाहरण है: सार्वजनिक वर्ग की मुख्य गतिविधि AppCompatActivity फैली हुई है {

टेक्स्टव्यू टेक्स्ट व्यू;

@ ओवरराइड क्रिएट पर सुरक्षित शून्य (बंडल सहेजे गए इन्स्टैंसस्टेट) { सुपर OnCreate (savedInstanceState);

सेट कंटेंटव्यू (आर लेआउट। गतिविधि_मैन);

// आप findViewById लाइन को भूल जाते हैं।

}

सार्वजनिक शून्य पर बटनटन (दृश्य देखें) {

पाठदृश्य setText ( "हैलो");

}

}

जावा में, एक संदर्भ प्रकार चर जो कुछ भी इंगित नहीं करता है, वह मान

नल है तो इस उदाहरण में,

टेक्स्टव्यू

चर का मान

रिक्त है

आप सेट टेक्स्ट रिक्त मूल्य पर कॉल नहीं कर सकते उस बात के लिए, आप रिक्त मूल्य पर किसी भी विधि को कॉल नहीं कर सकते जब जावा निष्पादित करने की कोशिश करता है

textView सेटटैक्स्ट ("हैलो") , एप्लिकेशन क्रैश हो जाता है उपयोगकर्ता को एक एप्लिकेशन ने संदेश रोक दिया है यदि आप एंड्रॉइड स्टूडियो का उपयोग करते हुए ऐप का परीक्षण कर रहे हैं, तो आप लॉगमार्क फलक में NullPointerException देखते हैं इस प्रकार की आपदा से बचने के लिए, अपने कोड में किसी भी विधि कॉल के बारे में दो बार सोचें। यदि डॉट से पहले अभिव्यक्ति संभवतः शून्य हो सकती है, तो अपने प्रोग्राम में अपवाद-हैंडलिंग कोड जोड़ें: सार्वजनिक शून्य पर बटनटन (दृश्य देखें) { कोशिश { टेक्स्टदृश्य] setText ( "हैलो"); } पकड़ (NullPointerException ई) {

टोस्ट makeText (यह, "ऐप एक त्रुटि से पुनर्प्राप्त किया गया है।", टोस्ट। LENGTH_LONG)। प्रदर्शन(); }

}

अनुमतियों का उपयोग करना

कुछ ऐप्स को स्पष्ट अनुमति की आवश्यकता है उदाहरण के लिए, कुछ ऐप्स इंटरनेट पर ट्विटर के सर्वर से बात करते हैं। यह तब तक काम नहीं करता जब तक आप ऐप के

एंड्रॉयड मैनिफ़ेस्ट में एक

तत्व जोड़ न देंxml

फ़ाइल:

अगर आप

तत्व को अपने

एंड्रॉइड मैनिफेस्ट में जोड़ना भूल जाते हैं xml

फ़ाइल, ऐप चहचहाना के सर्वर के साथ संचार नहीं कर सकता कोई उपयोगी त्रुटि संदेश प्रदर्शित किए बिना ऐप विफल रहता है बहुत बुरा! गतिविधि नहीं मिली यदि आप अपने ऐप के लिए दूसरी गतिविधि बनाते हैं, तो आपको ऐप के एंड्रॉइड मैनिफेस्ट में एक नया

तत्व जोड़ना होगा। एक्सएमएल फ़ाइल। तत्व के रूप में सरल हो सकता है, लेकिन अधिकांश मामलों में यह तत्व थोड़ा अधिक जटिल है। अगर आप इस

तत्व को नहीं जोड़ते हैं, तो एंड्रॉइड

MySecondActivity वर्ग नहीं ढूँढ सकता, भले ही MySecondAcitivity जावा फ़ाइल ऐप के प्रोजेक्ट डायरेक्टरी में है आपका ऐप

गतिविधिनोटफॉउन्ड अपवाद

के साथ क्रैश करता है और यह सब अंतर बनाता है