基础视频中毕老师总结
对于异常分两种
1、编译时被检测的异常
2、编译时不被检测的异常,运行时异常,RuntimeException以及其子类
但是,下面这段Exception代码编译时,也没有报错。
class Demo
{
int div(int a,int b)throws Exception //在功能上通过throws的关键字声明了该功能有可能会出现问题
{
return a/b;
}
}
class ExceptionDemo
{
public static void main(String[] args)
{
Demo d=new Demo();
try
{
int x=d.div(4,0);
System.out.println("x="+x);
}
catch (Exception e)//Exception e=new ArithmeticException();
{
System.out.println("除零啦");
System.out.println(e.getMessage());// /by zero;
System.out.println(e.toString());//异常名称:异常信息
e.printStackTrace();//异常名称:异常信息,异常出现位置
}
System.out.println("over");
}
}
这时为什么?哪位高手帮忙解答一下。 |
|