java.lang.NullPointerException کو کیسے حل کریں۔

Java Lang Nullpointerexception Kw Kys Hl Kry



پروگرامنگ زبانوں میں، غلطیوں کا سامنا کرنا ہمیں ڈویلپر کو اشارہ کرکے مختلف افعال کو مناسب طریقے سے انجام دینے کی اجازت دیتا ہے۔ ایسی صورت میں، ایسی مثالیں ہوسکتی ہیں جہاں ڈویلپر کو ' java.lang.NullPointerException 'کسی خاص پر' خالی بلک ڈیٹا سے نمٹنے کے دوران قدر۔ کوڈ کی خصوصیات کو ہموار کرنے کے لیے اس استثنا کو سنبھالنے کی ضرورت ہے۔

یہ بلاگ اس سے نمٹنے کے طریقوں کی وضاحت کرے گا۔ java.lang.NullPointerException '







'java.lang.NullPointerException' کو کیسے حل کریں؟

' java.lang.NullPointerException ” اس وقت لوٹا جاتا ہے جب کسی حوالہ متغیر کی درخواست کی جاتی ہے (یا ڈی ریفرنس) اور کسی چیز کا حوالہ نہیں دے رہا ہوتا ہے۔



'java.lang.NullPointerException' کا مظاہرہ

ذیل میں دی گئی مثال میں، ہم دیکھیں گے کہ بحث شدہ استثناء کیسے ہوتا ہے:



سٹرنگ s = null;
customFunc ( s ) ;
جامد باطل customFunc ( سٹرنگ str ) {
System.out.println ( str.length ( ) ) ;
}


مندرجہ بالا کوڈ کے ٹکڑوں میں:





    • سب سے پہلے، ' کے ساتھ ایک تار شروع کریں خالی ' قدر.
    • اگلے مرحلے میں، فنکشن customFunc() کو اس کی دلیل کے طور پر ڈکلیئرڈ سٹرنگ پاس کر کے استعمال کریں۔
    • اس کے بعد، ایک فنکشن کی وضاحت کریں جس کا نام ' customFunc() ایک سٹرنگ کی وضاحت کرکے جسے اس کے پیرامیٹر کے طور پر پاس کرنے کی ضرورت ہے۔
    • فنکشن کی تعریف میں، پاس شدہ سٹرنگ کی لمبائی کو ' کے ذریعے واپس کریں لمبائی ' جائیداد.
    • یہ کوڈ اس طرح کام کرے گا کہ ' خالی فنکشن کی قدر، زیر بحث استثنا کو پھینک دیا جائے گا:


مندرجہ بالا آؤٹ پٹ میں، یہ دیکھا جا سکتا ہے کہ ' NullPointerException 'دعوت دینے پر پھینکا جاتا ہے' خالی ایک فنکشن دلیل کے طور پر۔

طریقہ 1: 'java.lang.NullPointerException' کو حل کریں

' کوشش کریں 'بیان ایک کوڈ بلاک کی وضاحت کرنے میں مدد کرتا ہے جس پر عمل درآمد کے دوران غلطیوں کے لیے جانچ کی ضرورت ہوتی ہے اور' پکڑنا ” بیان ٹرائی بلاک میں کسی حد کا سامنا کرنے کی صورت میں عمل میں آتا ہے۔ مزید خاص طور پر، ' java.lang.NullPointerException 'کوشش کریں' بلاک میں مطلوبہ آپریشن کو لاگو کرکے اور ممکنہ استثنا کو 'کیچ' بلاک میں رکھ کر پورا کیا جا سکتا ہے۔



نحو

کوشش کریں {
کوشش کرنے کے لیے کوڈ بلاک
}
پکڑنا ( استثنیٰ ای ) {
چہرے کی رعایت کو ہینڈل کرنے کے لیے کوڈ بلاک میں کوشش بلاک
}


مثال

آئیے ذیل میں بیان کردہ مثال کا جائزہ لیں:

سٹرنگ s = null;
customFunc ( s ) ;
جامد باطل customFunc ( سٹرنگ str ) {
کوشش کریں {
System.out.println ( 'پہلا کردار:' + str.indexOf ( 0 ) ) ;
}
پکڑنا ( NullPointerException e ) {
System.out.println ( 'NullPointerException پھینک دیا گیا!' ) ;
} }


کوڈ کی اوپر کی لائنوں میں:

    • شروع کرنے کے لئے زیر بحث طریقوں کو یاد کریں ' خالی ” ویلیو اور null ویلیو کو دلیل کے طور پر پاس کر کے بیان کردہ فنکشن کو طلب کریں۔
    • اب، اسی طرح، 'نامی ایک فنکشن کی وضاحت کریں customFunc() اس کے پیرامیٹر کے طور پر اسٹرنگ کو پاس کرنا ہے۔
    • اس کے بعد، لاگو کریں ' کوشش کریں بیان indexOf() 'طریقہ.
    • نوٹ کریں کہ ' کوشش کریں اگر سٹرنگ کالعدم نہیں ہے تو بیان پر عمل درآمد کیا جا سکتا ہے۔ چونکہ قدر ہے ' خالی '، لہذا ایک استثناء کا سامنا کرنا پڑے گا جسے ' کے ذریعہ سنبھالا جائے گا۔ پکڑنا 'بیان.

آؤٹ پٹ


مندرجہ بالا آؤٹ پٹ میں، یہ دیکھا جا سکتا ہے کہ مخصوص استثناء کو ' پکڑنا بیان اور اس طرح اسے پھینک دیا جاتا ہے، اس طرح اسے حل کیا جاتا ہے۔

نقطہ نظر 2: 'if/else' بیان کا استعمال کرتے ہوئے 'java.lang.NullPointerException' کو حل کریں۔

زیر بحث رعایت کو بھی ' کے ذریعے حل کیا جا سکتا ہے اور اگر 'بیان. یہ صرف مطلوبہ آپریشن کو انجام دے کر کیا جا سکتا ہے ' اگر 'بیان اور غیر مطمئن حالت پر، ایک استثناء واپس کیا جاتا ہے' کے ذریعے اور 'بیان.

نحو

اگر ( cond ) {
تسلی بخش شرط پر عمل درآمد ہونے والا بیان یعنی 'حالت'
}
اور {
غیر مطمئن افراد پر عمل درآمد کا بیان 'اگر' حالت.
}


مثال

استثنیٰ کا مقابلہ کرنے کے بارے میں سمجھنے کے لیے درج ذیل مثال کو دیکھیں:

سٹرنگ s = null;
customFunc ( s ) ;
جامد باطل customFunc ( سٹرنگ str ) {
اگر ( str ! = کالعدم ) {
System.out.println ( 'پہلا کردار:' + str.indexOf ( 0 ) ) ;
}
اور {
System.out.println ( 'NullPointerException پھینک دیا گیا!' ) ;
}
}


مندرجہ بالا کوڈ میں دیے گئے ذیل میں زیر بحث اقدامات کا اطلاق کریں:

    • null ویلیو کو شروع کرنے اور فنکشن کو شروع کرنے کے لیے زیر بحث اقدامات کو دہرائیں ' خالی اس کی دلیل کے طور پر قدر۔
    • اگلا، اسی طرح فنکشن کا اعلان کریں ' customFunc() 'مخصوص پیرامیٹر کا ہونا۔
    • اب، لاگو کریں ' اور اگر 'بیان اس طرح کہ مطمئن حالت پر' اگر بیان، متعلقہ بلاک پر عمل درآمد ہوتا ہے۔
    • دوسری صورت میں، ' اور بلاک نافذ ہو جائے گا اور زیر بحث استثناء کو پھینک دے گا۔
    • نوٹ کریں کہ حالت ' اگر 'بیان سابق نقطہ نظر سے مماثل ہے، اس طرح اس کو غلط ثابت کرتا ہے۔

آؤٹ پٹ


اس طرح آپ اس کو سنبھال سکتے ہیں ' java.lang.NullPointerException '

نتیجہ

' java.lang.NullPointerException ” اس وقت لوٹایا جاتا ہے جب ایک حوالہ متغیر کو طلب کیا جاتا ہے یا اسے ڈی ریفرنس کیا جاتا ہے اور کسی چیز کا حوالہ نہیں دے رہا ہوتا ہے۔ اس استثناء کو اس میں رکھ کر سنبھالا جا سکتا ہے ' پکڑنے کی کوشش 'بیان ایسا کہ عمل کرنے پر' کوشش کریں ” بلاک، چہرے کی رعایت کو بعد والے بلاک کے ذریعے پورا کیا جا سکتا ہے۔ اس کے علاوہ، ' اور اگر بیان کو اس استثنیٰ کو حل کرنے کے لیے اس میں رکھ کر استعمال کیا جا سکتا ہے۔ اور 'بیان اگر' اگر 'بیان پر عمل کرنے میں ناکام ہے۔ اس بلاگ نے اس سے نمٹنے کے طریقوں پر تبادلہ خیال کیا ہے۔ java.lang.NullPointerException '