博客
关于我
异常处理Java-----学习笔记整理
阅读量:303 次
发布时间:2019-03-03

本文共 1315 字,大约阅读时间需要 4 分钟。

Java异常处理详解

一、异常概述

错误可以产生于程序员无法预料到的各种情况或是由于超出程序员控制之外的环境因素。在Java中,程序运行时产生的一些错误称之为异常。异常是一个程序执行期间发生的事件,中断了正在执行的程序的正常指令流。

二、错误(Error)

错误不是异常,是脱离程序员控制的问题。Throwable类的子类包括Exception和Error。Throwable的两大子类是Exception和Error。Exception和Error的主要区别在于,Error表示系统内部错误或资源耗尽,这类错误比较严重,通常无法通过catch语句来处理。

三、捕捉异常

try、catch、finally是Java中用于处理异常的关键语句。try用于捕获可能发生异常的Java语句,catch用于处理捕获的异常,finally用于处理异常信息(如资源释放)。通过try-catch语句可以捕获并处理异常,确保程序的正常运行。

四、Java中常见的异常

Java程序运行过程中可能会抛出各种异常。常见的异常包括ClassCastException、ClassNotFountException、ArithmeticException、ArrayIndexOutOfBoundsException、ArrayStoreException、SQLException、NullPointerException、NoSuchfieldException、NoSuchMethodException、NumberFormatException、NegativeArraySizeException、StringIndexOutOfBoundsException、IOException、IllegalAccessException等。

五、自定义异常

自定义异常的步骤如下:

  • 创建自定义异常类
  • 在方法中通过throw关键字抛出异常
  • 如果当前抛出异常的方法中处理异常,可以使用try-catch语句捕获并处理
  • 捕获并处理异常,否则在方法的声明处通过throws关键字指明要抛出的异常
  • 在出现异常的方法的调用者中捕获并处理异常
  • 六、使用异常的原则

  • 避免过多使用异常会给系统增加负担
  • 在方法中使用try-catch捕获异常时,要对异常进行处理
  • try-catch语句块的范围不要太大,不利于对异常的分析
  • 一个方法被覆盖是,覆盖它的方法必须抛出相同的异常或子异常
  • 捕获的异常要有意义
  • 七、运行时异常

    RuntimeException是程序运行过程中产生的异常。非运行时异常包括Error类及其子类,表示Java运行系统中内部错误或资源耗尽的错误,这类错误比较严重。Exception类称为非致命性异常,可以通过捕捉处理后继续程序执行。

    八、使用throws抛出异常

    在使用throw语句抛出异常时,需要注意以下几点:

  • throw关键字通常用于方法体中,抛出一个异常对象。
  • 通过throw关键字抛出异常后,如果想在上一级代码中捕获并处理异常,则需要在抛出异常的方法中使用throws关键字在方法的声明中指明要抛出的异常。
  • 抛出多个异常时使用逗号分隔。
  • 转载地址:http://fcul.baihongyu.com/

    你可能感兴趣的文章
    mysql deadlock found when trying to get lock暴力解决
    查看>>
    MuseTalk如何生成高质量视频(使用技巧)
    查看>>
    mutiplemap 总结
    查看>>
    MySQL DELETE 表别名问题
    查看>>
    MySQL Error Handling in Stored Procedures---转载
    查看>>
    MVC 区域功能
    查看>>
    MySQL FEDERATED 提示
    查看>>
    mysql generic安装_MySQL 5.6 Generic Binary安装与配置_MySQL
    查看>>
    Mysql group by
    查看>>
    MySQL I 有福啦,窗口函数大大提高了取数的效率!
    查看>>
    mysql id自动增长 初始值 Mysql重置auto_increment初始值
    查看>>
    MySQL in 太多过慢的 3 种解决方案
    查看>>
    MySQL InnoDB 三大文件日志,看完秒懂
    查看>>
    Mysql InnoDB 数据更新导致锁表
    查看>>
    Mysql Innodb 锁机制
    查看>>
    MySQL InnoDB中意向锁的作用及原理探
    查看>>
    MySQL InnoDB事务隔离级别与锁机制深入解析
    查看>>
    Mysql InnoDB存储引擎 —— 数据页
    查看>>
    Mysql InnoDB存储引擎中的checkpoint技术
    查看>>
    Mysql InnoDB存储引擎中缓冲池Buffer Pool、Redo Log、Bin Log、Undo Log、Channge Buffer
    查看>>