Cのエラーと例外の違いは何ですか

目次:

Anonim

NS 主な違い C#のエラーと例外の間は システムリソースが利用できないためにエラーが発生し、プログラムの問題が原因で例外が発生します。

C#のエラーと例外には明確な違いがありますが、人々はこれら2つの用語を同じ意味で使用することがよくあります。エラーは、必要なシステムリソースがないために発生する状況です。例外は、プログラムの問題が原因で発生する状況です。全体として、例外は回復可能ですが、エラーは回復不可能です。

エラー、例外、C#

C#のエラーとは

エラーは、システムリソースが利用できないために発生する状況です。エラーは複雑な障害であり、プログラマーは自分のプログラムでエラーを処理できません。したがって、エラーは回復不能です。コンパイラがその発生を認識していないため、これはチェックされていない型です。したがって、実行時にエラーが発生します。メモリ不足エラー、スタックオーバーフローエラー、システムクラッシュエラーは、いくつかの一般的なエラーです。プログラマーはC#プログラムを使用してこれらのエラーを処理できないため、プログラムが異常終了します。

C#の例外とは

例外は、プログラムの実行時に発生する問題です。 C#プログラムの問題が原因で例外が発生する可能性がありますが、それらを回復することは可能です。数値をゼロで割るのは例外の例です。プログラマーは、try、catch、finallyブロックを使用して、C#プログラムの例外を処理します。彼は、例外を引き起こす可能性のあるコードをtryブロック内に配置できます。例外が発生した場合、プログラムはcatchブロック内のステートメントを実行します。例外が発生したかどうかに関係なく、finallyブロックが実行されます。プログラマーは、finallyブロック内にファイルを閉じるなどの操作を含めることができます。さらに、finallyブロックを持つことは必須ではありません。

チェックされた例外とチェックされていない例外の2種類の例外があります。コンパイラは、チェックされた例外について認識しています。一方、コンパイラはチェックされていない例外については知りません。

図1:例外を除いたC#プログラム

上記は例外のあるプログラムです。変数「a」の値は10で、「b」の値は0です。aをbで除算すると、例外が発生します。したがって、catchブロックが実行され、例外が出力されます。最後に、finallyブロックが実行されます。

C#でのエラーと例外の違い

意味

エラーは、システムリソースの不足が原因で発生する予期しない状態を示していますが、例外は、プログラムの通常のフローを妨げるプログラムの問題です。したがって、これがC#のエラーと例外の主な違いです。

発生

回復

リカバリは、C#のエラーと例外のもう1つの違いです。例外は回復可能ですが、エラーは回復不能です。

取り扱い

さらに、プログラムを使用してエラーを処理する方法はありません。ただし、try、catch、finallyなどのキーワードを使用して、プログラムで例外を処理することは可能です。

分類

エラーはチェックされていないタイプとして分類されますが、例外はチェックされている例外とチェックされていない例外として分類されます。したがって、これはC#のエラーと例外のもう1つの違いです。

OutOfMemoryError、StackOverFlowError、およびIOErrorはエラーの例であり、ArithmeticException、SQLException、およびNullPointerExceptionは例外の例です。これは、C#のエラーと例外のもう1つの違いです。

結論

C#のエラーと例外の主な違いは、システムリソースが利用できないためにエラーが発生するのに対し、プログラムの問題が原因で例外が発生することです。簡単に言うと、エラーはC#プログラムでは処理できない重大な状態ですが、例外はC#プログラムで処理できる例外的な状況です。

リファレンス:

1.「C#例外処理」。 Www.tutorialspoint.com、Tutorials Point、ここから入手できます。

Cのエラーと例外の違いは何ですか