2012年4月19日木曜日

開発環境

  • Microsoft Windows 7 Home Premium (OS)
  • Microsoft Visual C# 2010 Express Edition (IDE)
  • 言語: C#

独習C# 第3版 ハーバート・シルト (著) エディフィストラーニング株式会社 矢嶋聡 (監修, 翻訳) の第10章(C例外処理)の理解度チェック5、6、7を解いてみる。

5.

catch句の順序が誤っている。例外クラスの派生クラスを先にしなければならない。

修正。

コード

class A : Exception { ...
class B: A { ...
  // ...
try {
  // ...
}
catch (B exc) { ... }
catch (A exc) { ... }

6.

tryがネスとしている場合、内側のcatchで捕捉した例外を外側のcatchに向けて再度投げることができる。

7.

問題の文章は誤っている。正しくは、finallyブロックはtryブロック、あるいはcatchブロックを抜ける際に実行される。

0 コメント:

コメントを投稿