过程一:“抛”:程序在正常执行的过程中,一旦出现异常,就会在异常代码处生成一个对应异常类的对象,
* 并将此对象抛出。
* 一旦抛出对象以后,其后代码就不再执行。
*
* 关于异常对象的产生:①系统自动生成异常对象
* ②手动生成一个异常对象,并抛出(throw)
过程二:“抓”:可以理解为异常处理方式。①try-catch-finally ②throws
/**
* 异常处理,抓抛模型
*
* 过程一:“抛”:程序在正常执行的过程中,一旦出现异常,就会在异常代码处生成一个对应异常类的对象,
* 并将此对象抛出。
* 一旦抛出对象以后,其后代码就不再执行。
*
* 关于异常对象的产生:①系统自动生成异常对象
* ②手动生成一个异常对象,并抛出(throw)
* 过程二:“抓”:可以理解为异常处理方式。①try-catch-finally ②throws
*
* 一、try-catch-finally处理
* try
* {
* //可能出现异常代码
*}
*catch (异常类型1 变量名1)
*{
*
*}
* catch (异常类型2 变量名2)
*{
*
*}
* .......
*finally
* {
* //一定会执行的代码
*}
*
*
* 说明
* 1.finally是可选的
*2.使用try将可能出现异常代码包装起来,在执行过程中,一旦出现异常,就会生成一个对应异常类的对象,根据此对象的类型
* ,去catch中匹配
*3.一旦try中的异常对象,匹配到某个catch时,就会进入catch中进行异常的处理,一旦处理完成,
* 就跳出当前的try-catch结构(没有finally情况下),继续执行其后的代码
*4.常用的异常处理方法:①String getMessage(),②printStackTrace();
*
*
*
*
* 二、throws
*
* @author orz
*/
public class ExceptionTest1 {
public static void main(String[] args) {
try {
String str="123";
str="abc";
int num=Integer.parseInt(str);
System.out.println("hello-1");
}
catch (NumberFormatException e)
{
e.printStackTrace();
//System.out.println("出现数值类型转换异常");
//System.out.println(e.getMessage());
}
System.out.println("hello-2");
}
}