黑马程序员技术交流社区

标题: 异常问题 [打印本页]

作者: 韩俊杰    时间: 2012-12-14 09:15
标题: 异常问题
什么时候用到Exception,什么时候用到ArithmeticException?
请各位大神们帮帮忙,最好能举一个小例子详细说明一下


作者: 但汉涛    时间: 2012-12-14 09:40
arithmeticexception
比如程序中出现了除以零这样的运算就会出这样的异常,对这种异常,大家就要好好检查一下自己程序中涉及到数学运算的地方,公式是不是有不妥了。
对于问题的划分:两种:一种是严重的问题,一种非严重的问题。

对于严重的,java通过Error类进行描述。
        对于Error一般不编写针对性的代码对其进行处理。

对与非严重的,java通过Exception类进行描述。
        对于Exception可以使用针对性的处理方式进行处理。
  1. class Demo
  2. {
  3.         int div(int a,int b)throws Exception//在功能上通过throws的关键字声明了该功能有可能会出现问题。
  4.         {
  5.                 return a/b;
  6.         }
  7. }


  8. class  ExceptionDemo
  9. {
  10.         public static void main(String[] args)
  11.         {
  12.                 Demo d = new Demo();
  13.                 try
  14.                 {
  15.                         int x = d.div(4,1);
  16.                         System.out.println("x="+x);
  17.                 }
  18.                 catch (Exception e)//Exception e = new ArithmeticException();
  19.                 {
  20.                         System.out.println("除零啦");
  21.                         System.out.println(e.getMessage());//  / by zero;
  22.                         System.out.println(e.toString());// 异常名称 : 异常信息。

  23.                         e.printStackTrace();//异常名称,异常信息,异常出现的位置。
  24.                                                         //其实jvm默认的异常处理机制,就是在调用printStackTrace方法。
  25.                                                         //打印异常的堆栈的跟踪信息。


  26.                 }               
  27.                

  28.                 System.out.println("over");

  29.         }
  30. }
复制代码
其实视频里有答案的,要不再看一遍这部分内容。
作者: 马铿    时间: 2012-12-14 10:12
当你使用了抛出某个特定异常的类时,比如进行数据库连接时必须处理SQLException,否则就得向上排除异常
public class ArithmeticExceptionextends RuntimeException当出现异常的运算条件时,抛出此异常。例如,一个整数“除以零”时,抛出此类的一个实例。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2