zoukankan      html  css  js  c++  java
  • 异常

    异常

    什么是异常处理?

    当程序出现异常时,将程序控制权交由异常处理机制来处理。

    程序错误的分类?

    1)编译错误;

    2)运行时错误;

    3)逻辑错误;

    java异常继承体系

    详图如下:

     

     异常处理方式

    1.捕捉异常

    public static void main(String[] args) {
            FileInputStream fis = null;
            try{
                fis = new FileInputStream("C:\Users\menbbo\Desktop\a.txt");
            }catch (IOException e){
                e.printStackTrace();
            }finally {
                try{
                    if(fis!=null){
                        fis.close();
                    }
                }catch (IOException e){
                    e.printStackTrace();
                }
            }
        }
    }

    2.声明异常

        public static void main(String[] args) throws IOException{
            FileInputStream fis = new FileInputStream("C:\Users\menbbo\Desktop\UnZipController.java");
    }

    异常与方法重写

    子类异常声明的范围不能超过父类声明的范围。

    1.父类没有声明异常,子类也不能声明。

    2.子类重写的方法中声明的异常类,需要与父类被重写方法中声明的异常类保持一致,或者是父类被重写方法中声明的异常类的子类。

    自定义异常

    1.为什么要自定义异常?

    1)封装

    2)快速定位

    2.自定义异常类步骤

    1)创建类

    2)继承Exception或者Exception的子类

    3)重写构造方法

    public class CustomizeException extends Exception{
        public CustomizeException(){};
        public CustomizeException(String message){
            System.out.println(message);
        }
    }

    手动抛出异常

    手动抛出异常的步骤:

    1)找到一个合适的异常类

    2)创建这个异常类的对象

    3)抛出这个对象

        public void fun()throws IOException{
            throw new IOException();
        }

    访问异常信息

    堆栈轨迹(stack trace):方法调用过程的列表。

    finally回收资源

    1.I/O属于物理资源

    2.java垃圾回收机制不会回收物理资源,垃圾回收机制只能回收堆内存中对象所占用的内存。

    自动关闭资源

    多异常捕获

    异常嵌套

     Catch和throw同时使用

    将原始的异常信息保存下来,返还给调用者。

  • 相关阅读:
    截取小数位数(准确四舍五入及直接截取)
    水印
    用心整理的 献丑啦 一些关于http url qs fs ...模块的方法
    html禁止清除input文本输入缓存的两种方法
    flink写入elasticsearch报错!OOM内存溢出!连接异常关闭!
    实现网格建造系统
    AcWing 1064. 小国王
    AcWing 1052. 设计密码
    KMP 模板
    AcWing 1058. 股票买卖 V
  • 原文地址:https://www.cnblogs.com/menbo/p/13574758.html
Copyright © 2011-2022 走看看