Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Java

जावा में NullPointerException को कैसे हल करें?

एक NullPointerException JVM द्वारा फेंका गया एक रनटाइम अपवाद है जब हमारा एप्लिकेशन कोड, अन्य संदर्भित API या मिडलवेयर निम्नलिखित स्थितियों का सामना करता है

  • एक अशक्त वस्तु की एक आवृत्ति विधि का आह्वान करने का प्रयास।
  • एक अशक्त वस्तु के किसी विशेष क्षेत्र तक पहुँचने या संशोधित करने का प्रयास।
  • एक सरणी के रूप में एक अशक्त वस्तु की लंबाई प्राप्त करने का प्रयास।

NullPointerException को हल करने के चरण:

  • java.lang.NullPointerException की समीक्षा करें स्टैक ट्रेस और निर्धारित करें कि अपवाद कहाँ ट्रिगर किया गया है (एप्लिकेशन कोड, तृतीय-पक्ष एपीआई, मिडलवेयर सॉफ़्टवेयर और लाइन निकालें)।
  • यदि समस्या एप्लिकेशन कोड में है तो एक कोड वॉक-थ्रू की आवश्यकता होगी। यदि समस्या तृतीय-पक्ष API या मिडलवेयर से पाई जाती है, तो पहले संदर्भित कोड की समीक्षा करने और यह निर्धारित करने की आवश्यकता है कि क्या यह परोक्ष रूप से समस्या का स्रोत हो सकता है, उदाहरण के लिए, किसी तृतीय पक्ष API पद्धति को शून्य मान देना, आदि।
  • यदि एप्लिकेशन कोड में समस्या पाई जाती है, तो यह निर्धारित करने का प्रयास करें कि कौन सा ऑब्जेक्ट इंस्टेंस शून्य है और समस्या पैदा कर रहा है। उचित नल चेक सत्यापन और उचित लॉगिंग जोड़ने के लिए हमें कोड को संशोधित करने की आवश्यकता है ताकि हम शून्य मान के स्रोत को भी समझ सकें।

उदाहरण

public class NPEDemo {
   private String field1 = null;
   private String field2 = null;
   public String getField1() {
      return field1;
   }
   private void setField1(String field1) {
      this.field1 = field1;
   }
   public String getField2() {
      return field2;
   }
   private void setField2(String field2) {
      this.field2 = field2;
   }
   public static void main(String[] args) {
      try {
         NPEDemo npe = new NPEDemo();
         npe.setField1("field1 value");
         npe = null;
         npe.setField2("field2 Value");
      } catch (Throwable e) {
         System.out.println("Java Error is: "+e );
         e.printStackTrace();
      }
   }
}

आउटपुट

Java Error is: java.lang.NullPointerException
java.lang.NullPointerException
at NPEDemo.main(NPEDemo.java:24)

  1. जावा में अपवाद को कैसे पुनर्स्थापित करें?

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

  1. "त्रुटि 500:Java.Lang.NullPointerException" को कैसे ठीक करें

    त्रुटि 500:Java.lang.nullpointerexception एक त्रुटि है जो कुछ डेवलपर्स को उनके कोड को निष्पादित करते समय सामना करना पड़ता है। इसके अलावा, एंड-यूजर्स को एप्लिकेशन / गेम लॉन्च करते समय या किसी विशेष वेबसाइट तक पहुंचते समय त्रुटि 500 ​​​​का सामना करना पड़ता है। आमतौर पर, निम्न प्रकार का त्रुटि संदेश दि

  1. जावा में JSON को कैसे पार्स करें

    इस ट्यूटोरियल में हम देखेंगे कि विभिन्न पुस्तकालयों का उपयोग करके जावा में JSON को कैसे पार्स किया जाए। JSON जावास्क्रिप्ट ऑब्जेक्ट नोटेशन के लिए खड़ा है, और यह जावास्क्रिप्ट के सबसेट पर आधारित है। डेटा-एक्सचेंज प्रारूप के रूप में, यह वेब प्रोग्रामिंग में व्यापक रूप से उपयोग किया जाता है। यहां हम