【C#】NETでよく見られるメジャーな例外エラー
.NETでよく見られるメジャーな例外エラーを以下にいくつか挙げます。
- System.NullReferenceException
- 説明: オブジェクトがnullであるのに、それにアクセスしようとした場合に発生します。
- 例:
string str = null; int length = str.Length;
- System.IndexOutOfRangeException
- 説明: 配列のインデックスが有効な範囲外である場合に発生します。
- 例:
int[] array = new int[5]; int value = array[10];
- System.ArgumentException
- 説明: メソッドに無効な引数が渡された場合に発生します。
- 例:
void SetAge(int age) { if (age < 0) throw new ArgumentException("Age cannot be negative"); }
- System.InvalidOperationException
- 説明: オブジェクトの現在の状態では操作が無効である場合に発生します。
- 例:
var enumerator = list.GetEnumerator(); enumerator.MoveNext(); enumerator.MoveNext();
- System.IO.IOException
- 説明: 入出力操作中にエラーが発生した場合に発生します。
- 例:
using (StreamReader sr = new StreamReader("nonexistentfile.txt")) { string line = sr.ReadLine(); }
- System.DivideByZeroException
- 説明: 整数の除算でゼロ除算が行われた場合に発生します。
- 例:
int result = 10 / 0;
- System.FormatException
- 説明: 文字列が予期しない形式であり、変換できない場合に発生します。
- 例:
int number = int.Parse("abc");
- System.OutOfMemoryException
- 説明: ヒープメモリが不足している場合に発生します。
- 例:
byte[] largeArray = new byte[int.MaxValue];
- System.StackOverflowException
- 説明: 再帰が深すぎてスタックがオーバーフローした場合に発生します。
- 例:
void RecursiveMethod() { RecursiveMethod(); } RecursiveMethod();
- System.NotSupportedException
- 説明: メソッドや操作がサポートされていない場合に発生します。
- 例:
void Add(object item) { throw new NotSupportedException("Add is not supported"); }
これらの例外は、.NETのプログラムを開発する際によく遭遇する可能性が高いものです。それぞれの例外の原因と対処法を理解しておくことは、プログラムのデバッグと安定性向上に役立ちます。
ディスカッション
コメント一覧
まだ、コメントがありません