首页 > 代码库 > 异常及异常处理
异常及异常处理
/** * 捕获异常! * try{ * 执行语句,出现异常将不再继续执行后面语句,直接跳到对应的catch异常块, * }catch(exception e){ * 跳到此处后将把这里内容执行完后,如有finally语句块将执行finally语句块后结束,否则直接结束异常抛出语句块。 * }finally { * 异常语句块结束后必执行的语句块,一般用于释放内存。 * } * * * 抛出异常语法 * public void 方法名() throws 异常列表{ * throw new 异常类型("异常信息"); * } * * 自定义一个异常类 * 语法: * public class 类名 extends Exception{ * } * * *不能处理,抛出异常 * public void Test1(int i) throws Exception//此处用throws, * { * if (i==0) * { * throw new Exception("i不能为“0”");//此处用throw,抛出异常为Exception或自定义时,必须自己解决或向上抛出。 * } * } */
例子:
1 public class Demo1 2 { 3 public static void main(String[] args) 4 { 5 System.out.println("main开始"); 6 Demo1 d=new Demo1(); 7 d.js(); 8 d.Test2();//自定义异常 9 System.out.println("main结束");10 }11 12 public void Test1(int i) throws Exception13 {14 if (i==0)15 {16 throw new Exception("i不能为“0”");17 }18 }19 20 public void Test2(){21 try22 {23 throw new DemoException();24 } catch (DemoException e)25 {26 e.printStackTrace();27 }28 }29 30 public void js()31 {32 try33 {34 int a=10;35 int b=100;36 String s=null;37 System.out.println("while开始");38 while(b>-1)39 {40 System.out.println(s.length());41 a--;42 b=b/a;43 44 }45 }46 catch (NullPointerException e)47 {48 e.printStackTrace();49 System.out.println("空指针异常!");50 }51 catch (ArithmeticException e)52 {53 e.printStackTrace();54 System.out.println("计算异常!");55 } 56 catch (Exception e)57 {58 e.printStackTrace();59 System.out.println("未知异常!");60 }61 finally 62 {63 64 }65 System.out.println("while结束!");66 }67 68 }
异常及异常处理
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。