-5

コード:

package exceptiona;

import java.io.IOException

public class ExceptionTest {

@SuppressWarnings("empty-statement")
public static void main (String[] args)
{
    // call exceptionA
    try{
        throw new ExceptionA();
    } catch (Exception e){
        e.printStackTrace(};
        System.out.println ("threw Exception A")

    // call exceptionB
    try{
        throw new ExceptionB();
    } catch (Exception e) {
        e.printStackTrace(};
        System.out.println ("threw Exception B")

    // throw a NullPointerException
    try{
        throw new NullPointerException
    } catch (NullPointerException){
        nu
    }
    // throw IOException
    try{
        throw new IOException();
    } catch (IOException io){
        io.printStackTrace();

    }    
}        
}
4

5 に答える 5

1
public class ExceptionTest {

    @SuppressWarnings("empty-statement")
    public static void main(String[] args) {
        // call exceptionA
        try {
            throw new ExceptionA();
        } catch (Exception e) {
            e.printStackTrace();
            System.out.println("threw Exception A");

            // call exceptionB
            try {
                throw new ExceptionB();
            } catch (Exception e1) {
                e1.printStackTrace();
                System.out.println("threw Exception B");

                // throw a NullPointerException
                try {
                    throw new NullPointerException();
                } catch (NullPointerException nu) {

                }
                // throw IOException
                try {
                    throw new IOException();
                } catch (IOException io) {
                    io.printStackTrace();

                }
            }
        }
    }
}
于 2013-08-02T14:02:39.793 に答える
1

一般的に言えば、NullPointerException はランタイムであり、間違ったコード ロジックを示すため、キャッチしないようにする必要があります。

すべきことは、null であってはならないメソッドに null 引数を与えないようにすることです。

于 2013-08-02T13:57:38.890 に答える
1

2 番目のキャッチでは、構文エラーがあります。

変化する

e.printStackTrace(};

e.printStackTrace();
于 2013-08-02T13:54:26.373 に答える