4

について2つ質問がありExceptionsます。まず、コードからこのメッセージを受け取りました...

Exception in thread "main" java.lang.ArithmeticException: / by zero

このエラー メッセージは、次のようにゼロで除算することを意味します。int a = 5 / 0;

メソッドはクラス インスタンスをスローExceptionできますね。しかし、これは表現です。Exception式がクラス インスタンスをスローできるのはなぜですか?

2 番目の質問は についてthread "main"です。とはthread "main"? メソッド"main"のことですか?static main

4

3 に答える 3

4

java.lang.ArithmeticExceptionExceptionは、問題が実際に何であるかをより適切に説明することを目的とした のタイプです。を作成するだけでは意味がありませんException。実際には何かが原因である可能性があります。を生成することArithmeticExceptionで、ユーザーは問題が計算に関するものであることをすぐに知ることができます。は、例Exceptionのような計算を含め、どのコードでもスローできます。

Exception in thread "main"メソッドによって例外がスローされることを意味しmain()ます。これは、コードを実行しているプラ​​イマリ スレッドでもあります。

于 2012-05-30T13:57:06.560 に答える
2

メソッドは例外クラスのインスタンスをスローできますね。

はい、できます。

しかし、これは声明です。ステートメントが例外クラスインスタンスをスローできるのはなぜですか?

例外はどこでも発生する可能性があります。したがって、ステートメントでも例外がスローされる可能性があります。そして、ステートメントが例外をスローできない理由を意味している場合は、例外をスローできます。次に例を示します。

if ((a/b) == 0) {
        throw new ArithmeticException();
    }

2番目の質問は、スレッド「メイン」についてです。スレッド「メイン」とは?

Java プログラムが起動すると、すぐに 1 つのスレッドが実行されます。これは通常、プログラムのメイン スレッドと呼ばれます。これは、プログラムの開始時に実行されるスレッドであるためです。

于 2012-05-30T13:58:17.197 に答える