Java面向对象之异常(异常处理方式)

Posted 竹小冉

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java面向对象之异常(异常处理方式)相关的知识,希望对你有一定的参考价值。

一、基础概念

  (1)异常:Java程序在运行时期发生的不正常情况。

     Java就按照面向对象的思想对不正常情况进行描述和对象的封装。

  (2)异常问题分类: (Throwable:定义对于问题共性的功能。)

     1.Error:由系统底层发生的,jvn告诉使用者。不做针对性处理,直接修改代码。

     2.Exception:发生并告诉使用者,可以进行针对性的处理。

  (3)异常的处理情况

    1.遇到问题不进行具体的处理,继续抛给调用者。就是在函数上通过throws关键字声明异常。目的是让调用者可以进行处理。

    2.针对性的处理方式:捕获!
      try
      {
      //有可能发生异常的代码。
      }
      catch(异常类 变量)
      {
      //这是真正的捕获,处理异常的代码;
      }
      finally
      {
      //一定会被执行的代码。
      }

 

 二、虚拟机处理异常代码

 1 class Demo
 2 {
 3     int div(int a,int b)throws Exception//声明异常Exception
 4     {
 5         return a/b;
 6     }
 7 }
 8     
 9 class ExceptionDemo1
10 {
11     public static void main (String[] arge)throws Exception//将异常Exception抛给虚拟机处理
12     {
13         Demo d = new Demo();
14         int num = d.div(4,0);
15         System.out.println("num="+num);
16         System.out.println("over");
17     }
18 }

  

 三、捕获处理异常代码(二)


 1 class Demo
 2 {
 3     int div(int a,int b)throws Exception//声明异常Exception
 4     {    
 5         return a/b;//throw new ArithmeticException("/ by zero")抛给调用者。
 6     }
 7 }
 8     
 9 class ExceptionDemo1
10 {
11     public static void main (String[] arge)
12     {
13         Demo d = new Demo();
14         
15         //对异常进行处理
16         try
17         {
18             int num = d.div(4,0);
19             System.out.println("num="+num);
20         }
21         catch(Exception e)
22         {
23             //处理这个对象,可以使用该对象的方法。
24             System.out.println("处理异常的代码:除数不能为0");
25             System.out.println(e.getMessage());//异常信息
26             System.out.println(e.toString());//异常名称+异常信息
27             e.printStackTrace();//异常名字+异常信息+位置。jvm默认处理收到异常就是调用这个方法。将信息显示在屏幕上。
28         }
29         System.out.println("over");
30     }
31 }

  

 

以上是关于Java面向对象之异常(异常处理方式)的主要内容,如果未能解决你的问题,请参考以下文章

Java面向对象编程之异常处理机制

Python之面向对象异常处理

Java面向对象程序设计------异常处理(异常*部分2)

Java面向对象程序设计------异常处理(异常*部分2)

Java面向对象程序设计------异常处理(异常*部分2)

Java面向对象程序设计------异常处理(异常*部分2)