ではC#
、try catch finally ブロックはどのように機能しますか?
したがって、例外が発生した場合は、catch ブロックにジャンプしてから、finally ブロックにジャンプすることがわかっています。
しかし、エラーがなければ catch ブロックは実行されませんが、finally ブロックは実行されますか?
ではC#
、try catch finally ブロックはどのように機能しますか?
したがって、例外が発生した場合は、catch ブロックにジャンプしてから、finally ブロックにジャンプすることがわかっています。
しかし、エラーがなければ catch ブロックは実行されませんが、finally ブロックは実行されますか?
はい、例外の有無にかかわらず、finally ブロックが実行されます。
試す [トライステートメント] [ トライを終了 ] [ キャッチ [ 例外 [ タイプとして ] ] [ When 式 ] [キャッチステートメント] [ 試行を終了 ] ] [キャッチ...] [ ついに [ finallyStatements ] ] --RUN ALWAYS エンドトライ
参照: http://msdn.microsoft.com/en-us/library/fk6t46tz%28v=vs.80%29.aspx
はい、例外がない場合、finally 句が実行されます。例を挙げる
try
{
int a = 10;
int b = 20;
int z = a + b;
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
finally
{
Console.WriteLine("Executed");
}
したがって、ここで例外が発生すると、finally も実行されます。
try
{
//Function to Perform
}
catch (Exception e)
{
//You can display what error occured in Try block, with exact technical spec (DivideByZeroException)
throw;
// Displaying error through signal to Machine,
//throw is usefull , if you calling a method with try from derived class.. So the method will directly get the signal
}
finally //Optional
{
//Here You can write any code to be executed after error occured in Try block
Console.WriteLine("Completed");
}