zoukankan      html  css  js  c++  java
  • java异常处理

    1、自定义异常

    (1)先定义一个方法,其中包含可能会抛出异常的行为(可能成功,也可能失败),并且if(失败) 则 throw eException

    (2)在使用该方法时必须是在try-catch里面的try执行

    (3)程序在执行到throw语句时立即终止,从该方法中跳出往下执行,所以throw后面的语句不可达

    static int filterCartItem(int id) throws MyException {
            // TODO Auto-generated method stubif (id<0) {
                // throw之后的语句都无效
                throw new MyException("不存在该商品!");}
    return id;
    }

    主函数中使用它:

    (1)如果catch中没有内容,则不会显示异常信息

    (2)catch里面的e是filterCartItem里面抛出的

    (3)catch里面的参数应该和filterCartItem里的异常类一致

    (4)如果try的某一条语句执行出现异常,则该语句一下的语句都不会在执行,而直接条转到catch

    try {
          filterCartItem(id);
                } catch (MyException e) {
                    // TODO: handle exception
                   System.out.println(e.getMessage());
       }

    如果在try中出现错误但希望再给它一次机会,可以:

    for (int i = 0; i < 3; i++) {
                try {
                   //
                } catch (Exception e) {
                    // TODO Auto-generated catch block
                    System.out.println("错误的数量: " + e.getMessage());
                    if (i != 2) {
                        System.out.println("请重新输入:");
                    } else {
                        System.out.println("错误次数达到最大,终止!");
                    }
                }
            }

     2、已经try-catch还是提醒要throw解决方法:

    因为catch的异常类不是基类exception导致异常不全!

    Done!

  • 相关阅读:
    多路径下使用ASMLIB创建ASM磁盘
    linux7.4开启hugepages
    Oracle 12CR2 RAC 升级
    深度思考比勤奋更重要(转)
    Oracle最大保护模式是有延迟的
    mysql主从安装简记
    Socket 监控服务器运行状态
    12C Sharding 学习安装
    惊喜与局限并存,12c Sharding内测报告抢先看!
    Oracle 12c 分片(Sharding)技术
  • 原文地址:https://www.cnblogs.com/xingyyy/p/3370736.html
Copyright © 2011-2022 走看看