美文网首页
java基础--异常

java基础--异常

作者: 逆风的妞妞 | 来源:发表于2018-08-02 09:52 被阅读0次

    1.处理异常

    try-catch以及try-catch-finally捕获异常

    try{

        //一些会抛出异常的方法

    }catch(Exception e){

      //处理该异常的代码块

    }finally{

      //进行善后工作,最重要执行的一段代码,例如关闭文件

    }

    抛出异常后,程序中执行,程序的控制权将被移交给catch块中的异常处理程序。

    注意:要按照先小后大,先子类后父类编写catch块。

    finally是在try和catch语句块在执行return之后返回调用者之前被执行的。

    package com.imooc;

    public class TryExceptionTest {

    public static void main(String[] args) {

    TryExceptionTest tct =new TryExceptionTest();

            int result = tct.test();

            System.out.println("test()方法执行完毕,返回值为:" + result);

            int result2 = tct.test2();

            System.out.println("test2执行完毕,返回值为:" + result2);

            int result3 = tct.test3();

            System.out.println("test3执行完毕,返回值为:" + result3);

        }

    public int test(){

    int divider =10;

            int result =100;

            try{

    while (divider > -1){

    divider--;

                    result = result +100/divider;

                }

    return result;

            }catch (Exception e) {

    e.printStackTrace();

                System.out.println("循环抛出异常");

                return -1;

            }

    }

    //加上finally进行修改

        public int test2(){

    int divider =10;

            int result =100;

            try{

    while (divider > -1){

    divider--;

                    result = result +100/divider;

                }

    return result;

            }catch (Exception e) {

    e.printStackTrace();

                System.out.println("循环抛出异常");

                return result =999;

            }finally {

    System.out.println("这是finally");

                System.out.println("我是result,我的值:" + result);

            }

    }

    //如果try和catch、finally块中没有任何的return语句,则会调用三者之外的语句。

        public int test3(){

    int divider =10;

            int result =100;

            try{

    while (divider > -1){

    divider--;

                    result = result +100/divider;

                }

    }catch (Exception e) {

    e.printStackTrace();

                System.out.println("循环抛出异常");

            }finally {

    System.out.println("这是finally");

                System.out.println("我是result,我的值:" + result);

            }

    System.out.println("我是test3,我运行完了");

            return 1111;

        }

    }

    2.异常抛出

    throw--声明将要抛出何种类型的异常

    public void 方法名(参数列表)throws 异常列表{

    //调用会抛出异常的方法或者:throw new Exception();

    }

    3.自定义异常

    class 自定义异常类 extrends 异常类型{

    }

    相关文章

      网友评论

          本文标题:java基础--异常

          本文链接:https://www.haomeiwen.com/subject/gehjvftx.html