android捕捉错误简单使用

Android捕捉错误try catch 的简单使用教程

编程开发 2020-09-22 08:44:30 30

导读

基本语法try{ //可能发生错误的程式码 }catch(具体错误 e){ //具体错误有就写,没有就不写,有多个,就写多个catch e.printStackTrace(); //在命令行打印错误信息 }catch(Exception e){ log(e.toString()); }finally{ //无论是否捕捉到错误,一定……

基本语法

try{
	//可能发生错误的程式码
}catch(具体错误 e){
	//具体错误有就写,没有就不写,有多个,就写多个catch
	e.printStackTrace(); //在命令行打印错误信息
}catch(Exception e){
	log(e.toString());
}finally{
	//无论是否捕捉到错误,一定会执行的代码
}

注意事项

  • 一般设定 catch 取得错误时应由小范围到大范围,即先具体错误,最后利用 Exception 处理所有其他错误

  • finally 语句是一定会执行的程式段,一般用来删除物件或关闭档案等

  • 参数 err 可以取得错误信息,一般使用 err.toString() 显示

ps:try 与catch的作用

首先要清楚,如果没有try的话,出现异常会导致程序崩溃。
而try则可以保证程序的正常运行下去,比如说: 

try{
  int i = 1/0;
}catch(Exception e){
 e.printStackTrace();
}

  一个计算的话,如果除数为0,则会报错,如果没有try的话,程序直接崩溃。用try的话,则可以让程序运行下去,并且输出为什么出错!
try的话,配合log4j使用会对程序的日后维护帮助很大。

那么e.printStackTrace();是什么意思?

 当try语句中出现异常是时,会执行catch中的语句,java运行时系统会自动将catch括号中的Exception e 初始化,也就是实例化Exception类型的对象。e是此对象引用名称。然后e(引用)会自动调用Exception类中指定的方法,也就出现了e.printStackTrace();。
printStackTrace()方法的意思是:在命令行打印异常信息在程序中出错的位置及原因。(这是白话解释,比较容易理解)

try{
//代码区
}catch(Exception e){
//异常处理
}

代码区如果有错误,就会返回所写异常的处理。


1253067 TFnetwork_cn