04--面向对象高级部门随记(下--04)

 

1.异常的概念:
 异常实际上是程序中错误导致中断了正常的指令流的一种事件,
 exception:程序运行时出现的错误;
2.捕获异常:
  try{
   异常语句
   }
  catch(Exception e){
    异常处理
    //打印异常
     System.out.println(e);
   }
  finally{
   必须执行语句
   }
 使用try...catch 表示程序出错之后可以继续向后执行;
 特性:异常发生之后,发生异常的代码不在执行;
 注意:try中的语句如果有错误,执行就会跳出try到catch,所以在该语句之后得到
  且在try中的语句就不执行了;
  如果没有发生异常,则不执行catch中的语句了;
  finally块始终都会执行;
3.throws:
 方法的后面加上throws后表示程序的方法不去处理任何的异常;
 方法加上throws后就不用处理异常了,他会将异常向上抛,即抛给
 调用该法的方法,让其处理;如果main方法也不处理异常,也是在后面
 加上throws,那么就会交给throws处理。
 默认情况下所有的异常都是通过jvm处理的;默认情况就是没有try catch也没有throws;

4.throw:
 抛出一个异常
  public class Demo{
   public static void main(String args[]) {
    try{
     throw new Exception("自己抛出的异常");
     }
    catch(Exception e){
     System.out.println(e);
     }
    
    }
    
   }
 一般throw语句与if一起使用:
  class MathDemo{
   public int div(int i,int j) throws Exception
   if(j==0){
     throw new Exception("被除数不能为零");
    }
    return i/j;
   }

  public class Demo{
   public static void main(String args[]) {
    try{
     System.out.println(new MathDemo().div(10,0));
     }
    catch(Exception e){
     System.out.println(e);
     }
    }
   }

 注意:throws表示抛出异常,不处理异常;
  throw表示抛出一个异常对象;

 

你可能感兴趣的:(jvm,exception,String,Class,div)