Dalam proses pembangunan Java, tidak dapat dielakkan untuk menghadapi pengecualian penuding nol. Pengecualian penuding nol bermakna apabila program cuba mengakses objek nol atau tatasusunan kosong, pengecualian java.lang.NullPointerException akan dilemparkan. Pengecualian ini sering merosakkan program kami. Saya percaya bahawa kebanyakan pengaturcara Java sepatutnya menghadapi pengecualian ini, dan kerana ia sangat biasa, kita harus belajar bagaimana untuk menyelesaikan pengecualian penunjuk nol.
Pernyataan penegasan dalam Java digunakan untuk menyemak ralat logik program. Dalam bahasa Java, format pernyataan penegasan adalah seperti berikut:
tegaskan ungkapan bersyarat
Jika nilai ungkapan bersyarat adalah palsu, program berakhir seperti biasa dan pengecualian java.lang.AssertionError dilemparkan. Kita boleh menggunakan mekanisme ini untuk mengelakkan pengecualian penuding nol. Jika objek mungkin batal, kita boleh menilai sebelum menggunakan objek, seperti berikut:
assert obj != null
Jika penegasan gagal, pengecualian akan dilemparkan, tetapi dalam kes ini pengendalian pengecualian program Mekanismenya; tidak menangkap pengecualian secara lalai dan perlu diselaraskan mengikut situasi sebenar.
Dalam program, kami juga sering menggunakan pernyataan if untuk menyemak sama ada objek kosong. Seperti yang ditunjukkan di bawah:
if (obj != null) {
// Beroperasi pada objek
}
Kaedah ini agak asas dan sangat praktikal, tetapi apabila menggunakan berbilang objek nullable, ia memerlukan banyak pernyataan if, yang mana kurang elegan.
Operator ternary di Java boleh memudahkan penulisan pernyataan if, seperti yang ditunjukkan di bawah:
obj == null ? Jika obj ialah objek kosong, kembalikan rentetan kosong jika tidak, kembalikan nilai obj.toString().
Gunakan pernyataan cuba/tangkapcuba {
//进行处理
} tangkap (NullPointerException e) {
//处理空指针异常
}
Ringkasan:
Kejadian pengecualian penunjuk nol adalah situasi yang sering dihadapi semasa pembangunan program, tetapi kita boleh menyelesaikan masalah ini melalui kaedah di atas. Penegasan, penyataan jika, pengendali ternary dan penyataan cuba/tangkap boleh menghalang berlakunya pengecualian penuding nol dan menjadikan program lebih mantap. Dalam proses menulis program, kita harus sentiasa ingat untuk mengelakkan berlakunya pengecualian penunjuk nol dan meningkatkan kebolehpercayaan dan kestabilan program.
Atas ialah kandungan terperinci Pengecualian penunjuk null dalam Java - bagaimana untuk menyelesaikan java.lang.NullPointerException?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!