Apakah NullReferenceException?
NullReferenception adalah runtime yang tidak normal di C#, dan ia berlaku apabila anda cuba mengakses ahli objek kosong. Ini mungkin berlaku dalam keadaan berikut:
kaedah cuba memanggil objek kosong. -
Cuba mengakses atribut objek kosong. -
Cuba membatalkan penunjuk kosong rujukan. -
bagaimana menyelesaikannya?
Terdapat beberapa cara untuk menyelesaikan kaedah NullReferenceExceuon:
Periksa nilai kosong sebelum melawat ahli. - Sebelum mengakses mana -mana ahli objek, anda harus sentiasa memeriksa sama ada objek itu kosong. Anda boleh menggunakan jika pernyataan, seperti yang ditunjukkan dalam contoh berikut:
<code class="language-csharp">if (object != null)
{
// 访问对象的成员。
}</code>
Gunakan pengendali penggabungan udara.
Pengkomputeran Penggabungan Udara (??) membolehkan anda menentukan nilai lalai yang digunakan jika objek kosong. Sebagai contoh, jika objek tidak kosong, nilai atribut nama dikembalikan;
-
Gunakan pengendali keadaan kosong.
pengendali bersyarat (? Dan? []) Membenarkan anda mengakses ahli objek tanpa memeriksa nilai kosong terlebih dahulu. Sebagai contoh, jika objek tidak kosong, nilai atribut nama dikembalikan;
<code class="language-csharp">string name = object?.Name ?? "Unknown";</code>
-
Gunakan blok cuba/tangkapan. Anda juga boleh menggunakan blok cuba/menangkap untuk memproses NullReferenceExceptions. Sebagai contoh, kod berikut akan memproses NullReferenceExceuon dan mencetak mesej ke konsol:
<code class="language-csharp">string name = object?.Name;</code>
Atas ialah kandungan terperinci Bagaimanakah saya dapat mencegah dan mengendalikan NullReferenceExceptions dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!
Kenyataan:Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn