您的位置:首页 > 其它

异常处理

2016-05-19 19:27 148 查看
本章内容 :(一个图五个关键字:throw/throws)
  1.java异常的概念。
  2.java异常的分类。
  3.异常的捕获和处理。
  
1.java异常是java提供的处理程序中处理错误 的一种机制 。
2.所谓的错误是指在程序运行过程中发生的一些异常事件。(如数组下标越界,读取的文件不存在)。
3.良好设计的程序应该在发生异常时人急提供处理这些错误 的方法,使程序不会因为异常发生而阻断产生不可预见的结果 。
4.java程序在执行过程如果出现异常事件,会生成一个异常对象,该异常对象封装了异常事件的信息,并将信息提交给java运行时系统,这个过程为throw异常。
5.当java运行时系统接收到这异常对象时,会到处理这一异常的代码并把当前异常对象交给其处理。这一过程叫做捕获(catch).


第一个异常示例:
  public class DomeException {


public static void main(String[] args) {
 try{
 System.out.println(2/0);
 }catch(ArithmeticException ae){
 System.out.println("系统出错请与管理员联系");
 ae.printStackTrace();
 }
}
}
注解:这里的ae是:我们自己定义的封装的异常事件的对象。


异常的分类:
  Throwable --> error (处理不了的错误)/ Exception(可以处理的处理必须处理的)
  Exception----> RuntimeException(可处理可不处理的异常).
  
异常捕获的处理:
  1.try代码段包含可能产生例处的代码 。
  2.try代码段后跟有一个或多个catch代码段。
  3.每个catch代码段声明其能处理的一种特定的类型的代码段处理一种特定类型的异常。
  4.当异常发生时,程序会中止当前的流程,根据获取的异常的类型去执行相应的catch代码段。
  5.finally段的代无论是否发生异常都会被执行。
  6.java的例外处理机制使得沿着被对调用的顺序往前查找,只查符合当前例外对象的处理程序。
  7.捕获异常的顺序是先抓小的再抓大的。
  8.重写方法需要抛出和原方法一样的异常或者不抛出异常.
  9.自定义异常。(通过继承java.lang.Exception)
    示例:
      public static void main(String[] args) {
      DomeMyException de = new DomeMyException();
      de.manage();
}

public void regist(int num) throws MyException{
if(num<0){
throw new MyException("人数不能小与0",2);
}
System.out.println("登记人数:" + num);
}

public void manage(){
try {
regist(-10);
} catch (MyException e) {
e.getMessage();
e.printStackTrace();
}
}


}


class MyException extends Exception{
int id ;
public MyException(String name,int id){
System.out.println(name);
this.id = id;
}
}Class MyException extends Exception(){
     
     }
异常对象的常用方法:
  1.getMessage();
  2.printStactTrace(); 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: