「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > C#のnullReferenceExceptionsを防止して対処する方法は?

C#のnullReferenceExceptionsを防止して対処する方法は?

2025-04-18に投稿されました
ブラウズ:746

How Can I Prevent and Handle NullReferenceExceptions in C#?

nullReferenceExceptionとは何ですか?

nullreferenceExceptionは、空のオブジェクトのメンバーにアクセスしようとすると発生するC#のランタイム例外です。これは、

の場合に発生する可能性があります
  • 空のオブジェクトの方法を呼び出してみてください。
  • 空のオブジェクトのプロパティにアクセスしてみてください。
  • ヌルポインターを抑制してみてください。

それを解決する方法は?

nullReferenceExceptionを解決する方法はいくつかあります:

  • メンバーにアクセスする前に、空の値を確認してください。 オブジェクトのメンバーにアクセスする前に、常にオブジェクトが空であるかどうかを常に確認してください。次の例に示すように、IFステートメントを使用できます。
if (object != null)
{
    // 访问对象的成员。
}
  • 空のマージ演算子を使用します。 空のマージ演算子(??)を使用すると、オブジェクトが空である場合に使用するデフォルト値を指定できます。たとえば、オブジェクトが空でない場合、次のコードは名前プロパティの値を返します。オブジェクトが空の場合、「不明」を返します:
string name = object?.Name ?? "Unknown";
  • 空の状態演算子を使用します。 空の状態演算子(?。および?[])により、事前にnull値をチェックすることなくオブジェクトのメンバーにアクセスできます。たとえば、オブジェクトが空でない場合、次のコードは名前プロパティの値を返します。オブジェクトが空の場合、それはnullを返します:
string name = object?.Name;
  • Try/Catch Blockを使用します。 Try/Catchブロックを使用して、nullReferenceExceptionsを処理することもできます。たとえば、次のコードはnullReferenceExceptionを処理し、コンソールにメッセージを印刷します。
試す
{
    //オブジェクトのメンバーにアクセスします。
}
catch(nullreferenceException ex)
{
    console.writeline( "nullreferenceExceptionが発生します。");
}  
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3