博客
关于我
异常处理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/

    你可能感兴趣的文章
    Nginx配置TCP代理指南
    查看>>
    NGINX配置TCP连接双向SSL
    查看>>
    Nginx配置——不记录指定文件类型日志
    查看>>
    nginx配置一、二级域名、多域名对应(api接口、前端网站、后台管理网站)
    查看>>
    nginx配置中的服务器名称
    查看>>
    Nginx配置代理解决本地html进行ajax请求接口跨域问题
    查看>>
    nginx配置全解
    查看>>
    Nginx配置参数中文说明
    查看>>
    Nginx配置后台网关映射路径
    查看>>
    nginx配置域名和ip同时访问、开放多端口
    查看>>
    Nginx配置多个不同端口服务共用80端口
    查看>>
    Nginx配置好ssl,但$_SERVER[‘HTTPS‘]取不到值
    查看>>
    Nginx配置如何一键生成
    查看>>
    Nginx配置实例-动静分离实例:搭建静态资源服务器
    查看>>
    Nginx配置实例-反向代理实例:根据访问的路径跳转到不同端口的服务中
    查看>>
    Nginx配置实例-反向代理实现浏览器请求Nginx跳转到服务器某页面
    查看>>
    Nginx配置实例-负载均衡实例:平均访问多台服务器
    查看>>
    Nginx配置文件nginx.conf中文详解(总结)
    查看>>
    nginx配置文件nginx.conf超详细讲解
    查看>>
    Nginx配置自带的stub状态实现活动监控指标
    查看>>