您的位置:首页 > 编程语言 > Java开发

java中的异常捕获及处理

2017-02-27 17:34 357 查看
package com.imooc.exception;

import java.util.Scanner;

public class ThrowExceptionTest {

    public static void main(String[] args) {

        // TODO Auto-generated method stub

        ThrowExceptionTest test = new ThrowExceptionTest();

        /**

         * 因为,test1对meth方法做出了异常捕获及处理;所以,此处将在异常处跳转至catch块中继续执行异常处理语句。

         */

        test.test1();

        try {

            /**

             * 因为,test2方法中,没有做出meth方法的异常处理,选择继续抛出异常;所以,此处应该捕获异常并处理。

             */

            test.test2();

        } catch (Exception e) {

            // TODO Auto-generated catch block

            e.printStackTrace();

        }

    }

    /**

     * @throws Exception

     */

    @SuppressWarnings("resource")

    public  void meth() throws Exception{

        //如果,键盘输入的不是int型,则抛出异常        

        Scanner scanner = new Scanner(System.in);

        scanner.nextInt();

    }

    /**

     * 1.调用异常的meth方法,尝试捕获异常并处理

     */

    public void test1(){

        try {

            new ThrowExceptionTest().meth();

        } catch (Exception e) {

            // TODO: handle exception

            System.out.println("我们将对抛出异常的方法:meth作出处理。");

            //e.printStackTrace();

        }

    }

    /**    

     * 2.调用异常的meth方法,不作异常处理,并向上抛出异常。(*即test2未处理异常,并给出继续抛出)

     */

     public void test2() throws Exception{

        

         new ThrowExceptionTest().meth();

     }

}

/**

 * 总结:

 *    一旦,有方法抛出异常,则调用此方法是都必须进行异常处理或者向上继续抛出异常。

 */    

注:此博文为日常学习总结,如有不当,请见谅!欢迎大家指出文章不当之处,谢谢。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java java异常 throw