1

メイン メソッド内で Object インスタンスを作成し、それを整数変数に割り当てます。例外がスローされたら、try catch を使用して処理し、catch 句でメッセージを出力します。どうすればいいのかわかりません。私はこれをしました:

public class Ch7LU1Ex4{

   public static void main(String argv[]) {   

     try{

       Object o = new Integer(10);
       int b = (Integer) o;

     }catch(Exception e){
       System.out.print("Exception caught");
     }

  }
}
4

2 に答える 2

2

割り当てが要求したことは完了しましたが (auto-unbox as なしでコーディングしInteger i = (Intsger)o;ますが)、キャストが機能するため、例外は発生しません。整数を整数にキャストしても例外は発生しません。

これを試して:

Object o = new Object(),

次に、キャッチコードを実行します

于 2012-12-29T13:32:15.827 に答える
2

割り当ては非常に奇妙です (基本的に、バグを実装するように指示されます) が、教師が望んでいることは次のとおりだと思います。

public static void main(String args[]) {   
    try {
        Object o = new Object();
        Integer b = (Integer) o;
    }
    catch (ClassCastException e) {
        System.out.print("An Object is not an Integer. The above makes no sense");
    }
}

Integer にキャストできるのは Integer インスタンスのみであることを認識してもらうためかもしれません。

于 2012-12-29T13:32:18.383 に答える