zoukankan      html  css  js  c++  java
  • 1-16使用try-catch捕捉异常

    处理异常

    可以使用try…catch…处理异常,例如之前的程序可以使用try…catch…处理

    package com.monkey1024.exception;
    
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    
    public class ExceptionTest02 {
    
        public static void main(String[] args) {
             try {
                FileInputStream fis = new FileInputStream("d:/monkey1024.txt");
                //捕捉FileNotFoundException异常
            } catch (FileNotFoundException e) {//jvm会创建FileNotFoundException的对象,然后将e指向这个对象
                //如果try里面的代码没有报错,则不会执行catch里面的代码
                e.printStackTrace();//打印出异常信息
                String msg = e.getMessage();
                System.out.println(msg);
            }
            System.out.println("monkey1024.com");//catch后面的语句会正常执行
        }
    
    }
    

    可以捕捉多个异常,但是catch里面必须从小类型异常到大类型异常进行捕捉,先捕捉子后捕捉父,最多执行一个catch语句块里面的内容。

    package com.monkey1024.exception;
    
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.IOException;
    
    public class ExceptionTest02 {
    
        public static void main(String[] args) {
             try {
                FileInputStream fis = new FileInputStream("d:/monkey1024.txt");
                fis.read();
            } catch (FileNotFoundException e) {//捕捉FileNotFoundException异常
                e.printStackTrace();
            } catch (IOException e) {//捕捉IOException异常
                e.printStackTrace();
            } catch (Exception e) {//捕捉Exception异常
                e.printStackTrace();
            } 
        }
    
    }
    

    jdk7新特性
    jdk7新特性,可以将多个捕捉的异常放到一个catch里面

    package com.monkey1024.exception;
    
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    
    public class ExceptionTest03 {
    
        public static void main(String[] args) {
    
            try {
                System.out.println(1024 / 0);
                FileInputStream fis = new FileInputStream("d:/monkey1024.txt");
                //jdk7新特性,可以将多个异常放到一个catch里面
            } catch (FileNotFoundException | ArithmeticException e) {
                e.printStackTrace();
            } /*catch (ArithmeticException e){
                e.printStackTrace();
            }*/
        }
    
    }
    
  • 相关阅读:
    密码加盐
    怎么查看别人网站信息
    Tomcat虚拟路径访问本地图片失败的问题
    SSM整合Swagger
    Can't read swagger JSON from http://localhost:8080/Test/api-docs
    swagger使用一新手篇
    @JsonFormat的导包问题
    Could not find acceptable representation
    PostMan打不开怎么解决
    Project facet Java version 1.8 not supported
  • 原文地址:https://www.cnblogs.com/superfly123/p/10444239.html
Copyright © 2011-2022 走看看