黑马程序员------异常

来源:互联网 发布:java中类的初始化顺序 编辑:程序博客网 时间:2024/06/03 08:30

------- <a href="http://www.itheima.com" target="blank">android培训</a>、<a href="http://www.itheima.com" target="blank">java培训</a>、期待与您交流! ----------

异常:运行时出现的不正常情况

异常的由来:java把程序运行时出现的各种不正常情况也看成对象
提取属性和行为进行描述(异常名称、异常信息、异常位置)
从而有了异常类
异常的分类:
严重的异常:
Error 进行描述,一般不用写针对性的处理代码

不严重的异常:
Exception进行描述,一般写针对性的处理代码
异常体系:
Throwable:Error、
原理Exception:默认情况下是java虚拟机处理异常,处理方式是打印异常信息
 当发生异常时,main处理不了异常,就抛给了jvm,因为这种异常是java内部
 已经定义好的异常,所以系统会自动创建相应异常类的对象,抛给jvm,jvm调用
 该异常类对象的printStacktrace,在控制台上打印出那些英文,然后程序中断,后面的程序不再执行


try
{
可能发生异常的代码
}
catch (异常类 参数)
{
处理异常的代码
}
class MyMath
{
public int mid(int a,int b)
{
return a/b;
}
}
class Test
{
public static void main(String[] args) 
{
MyMath  myMath = new MyMath();
        try
        {
int result = myMath.mid(3,0);//new ArithmeticException()
System.out.println("result="+result);
        }
        catch (Exception e)//Exception e = new ArithmeticException()
        {
//System.out.println("除数为零了!!");
System.out.println(e.getMessage());//异常信息
System.out.println(e.toString());//异常名称:异常信息
e.printStackTrace();//异常名称:异常信息 异常位置
        }


System.out.println("haha");//处理完异常,继续从catch下边的代码执行

}
}
0 0