SpringBoot之初识异常处理

JAVA 异常 概念
基本格式:
try{
//代码区
}catch(Exception e){
//异常处理
}

  • 假设我们现在执行一段代码,代码是求两个变量的商。 此时未加任何判断约束,除数为0的时候,运行代码就会抛出异常。
    例如:
    在这里插入图片描述

  • try catch 捕获异常:

package com.exp;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class aaa {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
		Logger logger=LoggerFactory.getLogger(aaa.class);
		int a=5;
		int b=0;
		try{
			float c=a/b;
			System.out.println("结果为:"+c);
		}catch(Exception e){
			logger.info("异常信息:",e);
		}
		System.out.println("我依然执行;");
		System.out.println("我依然执行;");
		System.out.println("我依然执行;");
		System.out.println("我依然执行;");
		System.out.println("我依然执行;");
	}

}

打印结果:
10:05:03.392 [main] INFO com.exp.aaa - 异常信息:
java.lang.ArithmeticException: / by zero
at com.exp.aaa.main(aaa.java:15)
我依然执行;
我依然执行;
我依然执行;
我依然执行;
我依然执行;

( 注意,此时在catch里只捕获了异常, 所以catch后面的代码依然会执行,如果添加了return; 那么当catch中捕获到有异常后, 其余代码就不执行了。)

新建自己的异常, 有的时候异常不是系统检测出来的,比如说0 不能做除数, 比如我们就规定1做除数的时候,对我们来说是错误的,要用异常来处理,那么就要新建异常消息,throw new Exception

例如:

package com.exp;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class aaa {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		
		Logger logger=LoggerFactory.getLogger(aaa.class);
		
		try {
			System.out.println(testFun(3,1));
		} catch (Exception e) {
			// logger4j打印
			logger.info("错误信息",e);
			// 异常打印
			// e.printStackTrace();
		}
		
	}

	public static float testFun(float a,float b) throws Exception{
		if(b==1){
			throw new Exception("新规定:除数不能为1!!!");
		}
		
		float c=a/b;
		return c;
	}
}


打印结果:
10:08:54.495 [main] INFO com.exp.aaa - 错误信息
java.lang.Exception: 新规定:除数不能为1!!!
at com.exp.aaa.testFun(aaa.java:26)
at com.exp.aaa.main(aaa.java:14)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值