Java异常处理

package test;
/*异常处理:try...catch
 * 在运行时处理异常
 * try里面的代码就是有可能产生异常对象的代码
 * catch(Exception e)用来捕捉到产生的异常对象
 * catch块就是来处理异常的代码块
 * try...catch处理异常的特点:
 * 1、try内部发生异常下面的代码执行
 * 2、产生的异常的对象被catch块类面的参数接收
 * 3、catch块来处理异常(如何处理要根据具体的业务要求)
 * 4、如果处理对象被catch来处理就不会向上抛出
 * 5、由于异常对象被处理了,异常后面的代码就会正常的执行
 * 6、调用端不会感知到异常的产生(因为没有向上抛出异常),后面的代码正常执行
 */

public class Demo1{
    public static void main(String[] args) {
        int result = divide(10,0);
        System.out.println("调用端的异常后面的代码被执行了");
        System.out.println(result);
    }
    public static int divide(int a, int b) {
        int c = 0;
        /*抛出运行时的异常,在没有任何的处理的情况下异常对象会自动的抛给调用端
         * 调用端接收到这个异常对象,由于调用端也没有任何处理,继续向上抛出给jvm
         * jvm会打印这个异常信息
         */
        try {
            c = a/b;
            System.out.println("try内部异常后面的代码被执行了");
        } catch (Exception e) {
            System.out.println("发生异常");
            e.printStackTrace();//打印错误信息
        }
        System.out.println("调用端的异常后面的代码被执行了");
        return c;
    }
}
 

 

------------------------------------------------------------------------------------------------------------

接收时异常处理

package test;

public class Demo2 {
    public static void main(String[] args) {
        try {
            //接收异常对象
            submitOrder(8);
        } catch(Exception e) {
            //处理异常
            System.out.println("我知道库存不足了");
            e.printStackTrace();//打印异常信息
        }
        
    }
    public static void submitOrder(int stock) {
        if(stock > 5) {
            //我们主动的抛出异常对象的语法
            throw new StockException("库存不足"+stock);
        } 
        System.out.println("购买成功");
    }
}
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值