欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

零基础小白学Java之用throws处理异常

程序员文章站 2022-05-05 08:57:47
...

使用throws处理异常不是真正的处理异常而是推卸责任
// 谁调用就把异常抛给谁
//m1方法如果出现了异常,因为采用是上抛,给了jvm,jvm遇到这个异常就会退出程序,下面的代码就不会执行!
//而如果你想正真处理问题,则需要try…catch

public class ExceptionText04 {
    public static void main(String[] args) {
                 m1();
               }
       public static void m1()throws FileNotFoundException{
                 m2();
            }
           public static void m2()throws FileNotFoundException{
                  m3();
     }
       //FileInputStream构造方法声明位置上使用throws(向上抛)
                public static void m3() throws FileNotFoundException {
         
                        new FileInputStream("c:/ab.txt");
     }
  }

程序运行本质:
在程序运行过程中发生了FileNotFoundException类型的异常,JVM为我们创建了一个FileNotFoundException类型的对象,该对象中携带了一下信息,JVM负责将该对象的信息打印到控制台。并且JVM停掉了程序的运行!

Exception in thread “main” java.io.FileNotFoundException: c:\ab.txt (系统找不到指定的文件。)
at java.io.FileInputStream.open0(Native Method)
at java.io.FileInputStream.open(FileInputStream.java:195)
at java.io.FileInputStream.(FileInputStream.java:138)
at java.io.FileInputStream.(FileInputStream.java:93)
at ExceptionText04.m3(ExceptionText04.java:18)
at ExceptionText04.m2(ExceptionText04.java:15)
at ExceptionText04.m1(ExceptionText04.java:12)
at ExceptionText04.main(ExceptionText04.java:9)