课堂所讲整理:异常

Posted 柒寒

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了课堂所讲整理:异常相关的知识,希望对你有一定的参考价值。

 1 package org.hanqi.ex;
 2 
 3 public class TestException {
 4 
 5     public static void main(String[] args) {
 6         
 7         //产生异常
 8         //除0异常
 9         //1.捕获 
10         try
11         {
12             int i = 12/10;    
13             
14             //打开一些资源
15             String s = null;
16             System.out.println("打开资源");            
17             //使用
18             //如果在使用中出现异常
19             System.out.println("使用资源");
20             s.length();
21             //关闭资源并释放
22             System.out.println("希望一定要执行的释放资源代码");
23         }
24         catch(ArithmeticException ex)
25         {
26             //针对特定的异常进行特别的处理
27             System.out.println("捕获了ArithmeticException异常");
28             //获取异常信息
29             String str = ex.getMessage();
30             //处理方式:显示或记录日志
31             System.out.println("异常信息="+str);
32             //把异常详细信息输出到控制台
33             ex.printStackTrace();
34             System.out.println();
35         }        
36         
37         catch(NullPointerException ex)
38         {
39             //针对特定的异常进行特别的处理
40             System.out.println("捕获了NullPointerException异常");
41             //获取异常信息
42             String str = ex.getMessage();
43             //处理方式:显示或记录日志
44             System.out.println("异常信息="+str);
45             //把异常详细信息输出到控制台
46             ex.printStackTrace();
47             System.out.println();
48         }
49         catch(Exception ex)
50         {
51             //针对特定的异常进行特别的处理
52             System.out.println("捕获了Exception异常");
53             //获取异常信息
54             String str = ex.getMessage();
55             //处理方式:显示或记录日志
56             System.out.println("异常信息="+str);
57             //把异常详细信息输出到控制台
58             ex.printStackTrace();
59             System.out.println();
60         }
61         finally//一定会被执行的代码
62         {
63             System.out.println("希望一定要执行的释放资源代码");
64         }
65         
66         try
67         {
68             int j = 12/0;
69         }
70         finally
71         {
72             System.out.println("希望一定要执行的释放资源代码");
73         }
74         System.out.println("程序继续执行");
75     }
76 }

技术分享

 

 1 package org.hanqi.ex;
 2 
 3 public class MyThrow {
 4     
 5     //把throws放在方法的后面,特别声明方法有可能出现的异常
 6     //方法本身不处理,交给调用者处理
 7     public int chu(int a,int b) throws Exception
 8     {
 9         return a/b;
10     }
11     public void diaoyong() throws Exception
12     {
13         try {
14             int i = chu(12,10);
15         } catch (Exception e) {
16             // TODO 自动生成的 catch 块
17             //e.printStackTrace();
18             System.out.println("我捕获了异常"+e.getMessage());
19             //主动抛出
20             throw e;
21         }
22     }
23     public void diaoyong2() throws Exception 
24     {
25         int i = chu(12,0);
26     }
27     public int test(int a,int b) throws Exception
28     {
29         //数据验证
30         if(b==0)
31         {
32             //自己定义
33             Exception e = new Exception("我自定义的异常信息:第二个参数不能等于0");
34             throw e;
35         }
36         return a/b;
37     }
38     public static void main(String[] args)
39     {
40         MyThrow mt = new MyThrow();
41         try {
42             mt.diaoyong();
43         } catch (Exception e) {
44             // TODO 自动生成的 catch 块
45             e.printStackTrace();
46         }
47         System.out.println("程序继续运行");
48         
49         try {
50             mt.test(30,0);
51         } catch (Exception e) {
52             // TODO 自动生成的 catch 块
53             //e.printStackTrace();
54             System.out.println("异常信息:"+e.getMessage());
55         }
56     }
57 }

技术分享

附相关思维导图:

技术分享

以上是关于课堂所讲整理:异常的主要内容,如果未能解决你的问题,请参考以下文章

课堂所讲整理:多线程

课堂所讲整理:包装&工具类

课堂所讲整理:单例静态重载和继承

课堂所讲整理:HTML--8Window.document对象

整理课堂笔记 pl/sql orcale异常

最全最详细publiccms常用的代码片段