您的位置:首页 > 编程语言 > Java开发

Java异常捕获机制中的try-catch

2019-03-18 19:09 204 查看
版权声明:转载注明来源。Keep Learning and Coding. https://blog.csdn.net/a771581211/article/details/88647682
package day08;
/**
* Java异常捕获机制中的try-catch
* try{}块是用来扩上可能出错的代码片段
* catch{}块则是用来捕获try{}块中代码抛出的错误并解决。
* @author kaixu
*
*/
public class ExceptionDemo1 {

public static void main(String[] args) {
System.out.println("程序开始了");

try{
String str = null;
str = " ";
str = "a";
/*
* JVM在执行代码的过程中若发现了一个异常,则会实例化这种情况的异常示例
* 并将代码整个执行过程完整设置到异常中来表示该错误报告,设置完毕后将该
* 异常抛出。若抛出异常的这句代码有被try包围,则JVM会检查catch中
* 是否有关注该异常。关注则交给catch并解决,否则会将异常抛出到当前
* 方法外,由调用当前方法的代码解决该异常。
*/
System.out.println(str.length());  //java.lang.NullPointerException
System.out.println(str.charAt(0));    //java.lang.StringIndexOutOfBoundsException
System.out.println(Integer.parseInt(str));  // java.lang.NumberFormatException
}catch(NullPointerException e){
System.out.println("出现空指针");
}catch (StringIndexOutOfBoundsException e) {
System.out.println("出现字符串下标越界");
/*
* 应当养成一个好习惯,在最后一个catch中捕获Exception.
* 避免因未捕获异常导致程序中断。
*
* 当多个cacth捕获不同异常时,这些异常间存在继承关系
* 那么子类异常要在上先行捕获,父类异常在下后续捕获。
*/

}catch (Exception e) {
System.out.println("出现未知错误,非战斗人员请立即撤离。");
}
System.out.println("程序结束了");

}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: