1. 异常
ThrowableError:错误 Exception:异常RuntimeException:运行时异常非RuntimeException:编译时异常
2. 异常处理
1. try...catch
try里面的语句遇到异常,会执行catch抛出异常;然后执行‘语句2处’
语句1处 //String转int try{ int a2=Integer.parseInt(s); }catch (Exception e){ e.printStackTrace(); //输出异常名、异常原因、异常位置 // System.out.println(e.toString()); //只输出异常名、异常原因 // System.out.println(e.getMessage()); //只输出异常原因 } 语句2处2. throws
throws跟在方法括号后边:
public double fun01() throws ParseException { ... }只是抛出异常,并不能解决异常,遇到异常还是会报错并停止运行
3. 自定义异常类
使用:throw new 类名("异常信息")
//自定义异常类 public class ThrowSelf extends Exception{ private ThrowSelf(){} //定义私有无参构造方法,不允许外界使用 public ThrowSelf(String message){ super(message); } } //使用 public void fun() throws ThrowSelf { for(int i=0;i<10;i++){ if(i==7){ throw new ThrowSelf("输入的数字是7"); } System.out.print(i); } } //输出 0123456Exception in thread "main" com.base.ThrowSelf: 输入的数字是7 at com.base.Base01.main(Base01.java:138)