NullPointer Exception ialah pengecualian dalam java yang sangat kerap timbul dengan pengaturcara. Ia adalah pengecualian masa jalan yang berlaku apabila instantiasi objek tidak betul. Objek diisytiharkan sebagai mempunyai nilai nol di dalamnya. Pengecualian penunjuk nol hanya menandakan bahawa ia cuba memanggil objek dengan rujukan yang mempunyai nilai nol di dalamnya. Perkara yang paling penting untuk diingat ialah pengecualian penunjuk nol tidak berkaitan dengan penunjuk kerana bahasa java tidak menyokong konsep penunjuk; sebaliknya, ia dikaitkan dengan rujukan objek.
Mulakan Kursus Pembangunan Perisian Percuma Anda
Pembangunan web, bahasa pengaturcaraan, ujian perisian & lain-lain
Sintaks:
Tiada sintaks khusus untuk pengecualian penuding Null untuk ditentukan sebagai ralat masa jalan; ia secara automatik timbul dan menjadi kelihatan untuk digunakan.
Pengecualian tangkapan boleh diisytiharkan dan kemudian dilemparkan ke titik dan nyahpepijat untuk Pengecualian NullPointer. Ia adalah satu perkara yang sangat membosankan untuk nyahpepijat untuk NullPointerException. Ia diperlukan untuk memastikan bahawa instantiasi objek dan pengisytiharan rujukan adalah betul pada masa pelaksanaan.
try { Object obj1 = new Object(); // Instantiate a new object for the class as reference Obj1=null; //Provide null value to the object created Logging.log(String.format(“get the object value”, obj1.object1for reference)); } catch(java.lang.NullPointerException exception) { Logging.log(exception); } catch(Throwable exception) { Logging.log(exception,false); }
NullPointerException dalam Java ialah pengecualian yang sama sekali bukan ralat yang lebih baik untuk pembangun. Sangat sukar untuk mencari pengecualian kerana ia berlaku setiap kali pada masa larian. Oleh itu, mencari pengecualian sedemikian adalah tugas yang membosankan. Pengaturcara mengambil masa berjam-jam untuk mengetahui NullPointerException.
Ia timbul apabila percubaan luar biasa dibuat untuk menetapkan objek yang ditakrifkan dengan nol di mana-mana apabila objek diperlukan untuk sesuatu perkara lain. Semua ralat java, termasuk NullPointerException, berlaku atas sebab tertentu seperti:
Seperti yang dinyatakan dengan jelas dan dilihat bahawa NullPointerException akan diwarisi daripada java.lang.RuntimeException isu ini akan timbul apabila terdapat pelaksanaan aplikasi pada masa penyusunan dan pelaksanaan aplikasi. Juga, apabila ia cuba mengakses terus medan, kaedah atau rujukan objek yang salah pada masa instantiasi, maka ia sangat diperlukan untuk membuang java.lang.NullPointerException. Menambah pembalak dan kemudian mencipta objek tiruan selanjutnya dan kemudian memanggil contoh kaedah objek yang diperuntukkan nol juga membantu dalam penyahpepijatan kod yang betul dan mencari punca utama NullPointerException dan baris yang menunjuk kepada ralat dan pengecualian. Oleh itu, ia merupakan kaedah penyelesaian masalah dan penyahpepijatan yang sangat konvensional untuk memahami ralat java yang berlaku pada baris tertentu.
Terdapat pembina khusus tertentu yang ditakrifkan dan diisytiharkan dengan kaedah NullPointerException, iaitu seperti berikut:
1. NullPointerException()
Pembina ini digunakan untuk membina NullPointerException tanpa mesej atau penjelasan terperinci. Ia boleh dianggap sebagai pengecualian kosong atau batal yang tidak disyorkan mengikut keperluan.
2. NullPointerException(String s)
Pembina ini berkelakuan bercanggah dengan NullPointerException() kerana ia termasuk sedikit mesej terperinci yang menyebabkan di lokasi yang ditentukan, dan ia akan melibatkan hujah yang boleh digunakan pada masa membina pengecualian penuding nol. Argumen String s bertanggungjawab untuk mencipta pengecualian penuding nol dengan mesej terperinci.
Di bawah ialah contoh Java NullPointerException:
Atur cara ini digunakan untuk menunjukkan seruan kaedah yang tidak sah pada masa pelaksanaan, yang menghasilkan NullPointerException, yang tidak diperlukan.
Kod:
public class Null_Pointer_Excptn { public static void main(String[] args) { String strng = null; try { if (strng.equals("monkey")) System.out.println("Let us take a value which needs to be similar"); else System.out.println("Otherwise it will not take a similar and equal value."); } catch(NullPointerException e) { System.out.println("It is a need to catch the null pointer exception."); } } }
Output:
Program ini menggambarkan program java, yang mengelakkan penciptaan NullPointerException kerana ia bukan kaedah konvensional.
Kod:
public class Null_Pointer_Excptn_Avoid { public static void main(String[] args) { String strng2 = null; try { if ("avoid_null".equals(strng2)) System.out.println("Coming out to be equal"); else System.out.println("It is not at all coming out to be equal"); } catch(NullPointerException e) { System.out.println("Catch the null pointer Exception to get a clarification."); } } }
Output:
This program illustrates that the NullPointerException can be avoided using the proper object verification before initialization.
Code:
public class Good_Null_Pntr_Excpn { public static void main(String[] args) { String store = "Learning"; try { System.out.println(getLength(store)); } catch(IllegalArgumentException e) { System.out.println("Need to catch the definition of illegalArgument."); } store = "Educba"; try { System.out.println(getLength(store)); } catch(IllegalArgumentException e) { System.out.println("Need to catch the definition of illegalArgument."); } store = null; try { System.out.println(getLength(store)); } catch(IllegalArgumentException e) { System.out.println("Need to catch the definition of illegalArgument."); } } public static int getLength(String store) { if (store == null) throw new IllegalArgumentException("Need to catch the definition of illegalArgument."); return store.length(); } }
Output:
As it is not a good practice to get NullPointerException as it makes the entire codebase cumbersome and consumes time for the programmers to figure out the root cause of the NullPointerException.
Therefore, it is very much needed to avoid these exceptions which can make sure using the following ways:
Java NullPointerException is an exception which is not a good option and is recommended not to occur as it consumes a lot of time. Debugging and troubleshooting become difficult; therefore, it must keep in mind that before the initialization of the object, the reference of the object must be proper. Therefore, the reference of the object’s null value should be proper, and then it can be avoided.
Atas ialah kandungan terperinci Java NullPointerException. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!