zoukankan      html  css  js  c++  java
  • java学习day12--异常

    异常

        什么是异常?

          异常就是程序运行过程中出现了不正常现象导致程序中断。在java中,把各种异常现象进行了抽象形成异常(Exception)。异常类(Exception)分为:受检异常(编译异常)运行时异常类(RuntimeException)。

        对于异常我们一般都会进项预处理,值得一提的是,进行预处理的异常只有受检异常(编译异常)

        异常处理有两种方式:捕获处理抛出处理:

          捕获处理:

            格式:

              try{

                对可能产生异常的代码块进行检视

                }catch(异常类型 e1){

                      e1.printStackTrace()

                  }finally{

                }

            关于try:

                      如果try代码块的某条语句产生了异常,就立即跳转到catch子句执行,try代码块后面的代码不再执行

                      try代码块可能会有多个受检异常需要预处理,可以通过多个catch子句分别捕获。

                关于catch:

                      在开发阶段,一般的处理方式要么获得异常信息,要么打印异常栈跟踪信息

                      调用 e1.printStackTrace()方法

                      在部署后,一般把异常信息打印到日志文件中

                      如果捕获的异常类型有继承关系,则先捕获子异常,再捕获父异常;若没有继承关系,则没有先后顺序

                关于finally:

                      不管是否产生异常,finally语句总会执行。一般情况下。会把释放系统资源的代码放到finally中

            抛出处理:

              格式:

                 方法名throws 异常名{

                  }

              

              谁调用这个方法,谁负责处理该异常。

              在定义方法时,把异常抛出是为了提醒方法的使用者,有异常需要预处理。

            异常处理的选择问题:    

              一般情况下,在调用其他方法时,如果被调用的方法有受检异常需要预处理,选择捕获处理

              在定义方法时,如果方法体中有受检异常需要预处理,可以选择捕获处理也可以选择抛出处理

  • 相关阅读:
    Codeforces Round #313 (Div. 1) A.Gerald's Hexagon
    COJN 0585 800604鸡蛋的硬度
    COJN 0584 800603吃糖果
    COJN 0583 800602分苹果
    COJN 0575 800601滑雪
    昨天的补记
    重构的代码
    写了一个复杂的sql语句
    一个想法
    安装了C
  • 原文地址:https://www.cnblogs.com/javaisbest/p/11657199.html
Copyright © 2011-2022 走看看