S2 JAVA_第五章 异常

System.exit(0);    结束程序

被除数  / 除数:


System.out.println(String.format("%d/%d = %d",
				num,num1,num/num1));

在java中报错了  后面的代码不会执行。

排除异常:

try {

} catch (Exception e) {

}



	try {
	
		} catch (InputMismatchException e) {//输入不是int的出现 InputMismatchException 输入类型异常

			// TODO: handle exception
			e.printStackTrace();//打印错误信息标题
			System.out.println(e.getMessage());//打印错误信息标题
			
		} catch (ArithmeticException e) {输入0出现 ArithmeticException算术异常

			e.printStackTrace();//打印堆栈信息
			System.out.println(e.getMessage());//打印错误信息标题
		}

try {

} catch (Exception e) {
// TODO: handle exception
}finally{
//有没有异常都执行

}

先执行try如果报异常就进入 catch 处理异常   再看有我finally有就执行

finally一定会执行吗?

不一定!finally之前有System.exit(0);  就不会执行

try 之前被return 不执行。


当有多个catch出现子类放在上面  父类放下面!


异常外抛:

不用try 把异常外抛的写法:



加了

try {

} catch (Exception e) {

}

与没加的是有区别的

加了的是经过处理后的信息。


运行结构:




 * 不处理Cheked异常:


/**
 * 不处理Cheked异常
 */
public class Test_03 {
	public static void main(String[] args) {
		FileInputStream fis = null;
		//创建指定文件流
		fis = new FileInputStream(new File("accp,txt"));
		//创建指定文件的流
		fis.close();
	}
}

配置log4j:


log4j.rootLogger=info,stdout


log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.err

log4j.appender.stdout.layout=org.apache.log4j.SimpleLayout



显示方式 (3种):

 log4j.appender.stdout.layout=org.apache.log4j.SimpleLayout
 log4j.appender.stdout.layout=org.apache.log4j.PatternLayout

 log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-M-d HH\:mm\:ss}%x[%5p](%C\:%M) %m%n 




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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值