ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

异常机制

2022-07-26 11:04:54  阅读:122  来源: 互联网

标签:System catch WorkExprction println 机制 异常 out


处理异常的两种方式:
1.throws上抛,丢给调用者来处理此异常

2.使用try catch语句来捕捉异常(main方法建议使用此语句,不建议上抛),且catch里面的异常类型可以为其父类型,但是不建议,因为不精准。写多个catch必须遵从“从小到大”,父类在后。

3.打印异常追踪信息用了异步的方式

4.finally中的语句,一定会执行!!!

5.throw用于手动抛出异常

package com.javastudy.example08;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
/*
处理异常的两种方式:
1.throws上抛,丢给调用者来处理此异常
2.使用try catch语句来捕捉异常(main方法建议使用此语句,不建议上抛),
且catch里面的异常类型可以为其父类型,但是不建议,因为不精准。
写多个catch必须遵从“从小到大”,父类在后。
3.打印异常追踪信息用了异步的方式
4.finally中的语句,一定会执行!!!
 */
public class ExpetionTest extends Exception{
    public static void main(String[] args) throws WorkExprction {

        System.out.println("main begin");
        NullPointerException nuller=new NullPointerException("空指针异常");
        String mes=nuller.getMessage();
        System.out.println(mes);
        //测试手动抛出异常
        Regist regist1 = new Regist();
        try
      {
          regist1.regist("12");
      } catch (WorkExprction workExprction) {
            workExprction.printStackTrace();
        }
        //测试捕捉异常
        try {
            m1();
            System.out.println("程序有异常则不执行此句!");
        } catch ( FileNotFoundException e) {
           // e.printStackTrace();//打印异常追踪信息
            System.out.println("程序有异常!");
        }finally {
            System.out.println("finally一定会执行!!");
        }

        /*
 catch ( Exception e) {  写多个必须遵从“从小到大”,父类在后
            // e.printStackTrace();
            System.out.println("程序有异常!");
        }
         */
        System.out.println("main over");
    }

    private static void m1() throws FileNotFoundException {
        System.out.println("m1 begin");
        m2();
        System.out.println("m1 over");
    }

    private static void m2() throws FileNotFoundException {
        System.out.println("m2 begin");
        new FileInputStream("C:\\22计算机考研-西南交通大学");
        System.out.println("m2 over");
    }
}
//定义异常
class WorkExprction extends Exception{
    public WorkExprction() {
    }

    public WorkExprction(String s) {
        super(s);
    }
}

该程序运行结果
image

标签:System,catch,WorkExprction,println,机制,异常,out
来源: https://www.cnblogs.com/hzxiang/p/16520131.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有