演習課題「例外メッセージを指定しよう」
右のコードでは、 Hello Word,answer,Hello C#を出力しますが、100を0で代入したnumber変数で割るため、例外が発生してしまいます。
このプログラムで、例外が発生した時に、標準エラー出力に下記のメッセージを表示して下さい。
プログラムを実行して、想定どおり出力されれば演習課題クリアです!
期待する出力値
Hello World
Hello C#
期待する標準エラー出力値
0では割り算できません
#03:いろいろな書式で例外に対応しよう
いろいろな形で例外に対応します。分かりやすいエラーメッセージを追加してみましょう。
// いろいろな書式で例外に対応しよう
using System;
class Lesson10
{
    public static void Main()
    {
        Console.WriteLine("Hello World");
        try
        {
            int number = 0;
            int answer = 100 / number;
            Console.WriteLine(answer);
        }
        catch (Exception e)
        {
            Console.Error.WriteLine("0では割り算できません");
            Console.Error.WriteLine(e);
            // Console.WriteLine(e.Message);
        }
        finally
        {
            Console.WriteLine("Hello C#");
        }
    }
}
| メソッド | 出力先 | paiza.IOでの出力先 | 
|---|---|---|
| Console.Error.WriteLine | 標準エラー出力 | 実行時エラー | 
標準エラー出力とは|「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典
https://wa3.i-3-i.info/word11638.html
Console.Error Property (System) | Microsoft Docs
https://docs.microsoft.com/ja-jp/dotnet/api/system.console.error?view=netframework-4.8
例外処理 - C# によるプログラミング入門 | ++C++; // 未確認飛行 C
https://ufcpp.net/study/csharp/oo_exception.html
例外と例外処理 - C# プログラミング ガイド | Microsoft Docs
https://docs.microsoft.com/ja-jp/dotnet/csharp/programming-guide/exceptions/
Exception Class (System) | Microsoft Docs
https://docs.microsoft.com/ja-jp/dotnet/api/system.exception?view=netframework-4.8