A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 陈欢 中级黑马   /  2012-7-19 09:51  /  1804 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 陈欢 于 2012-7-19 09:58 编辑

public class Test{
public static void main(String args[]){
  try{
   System.out.println(2/0);
  }catch(Exception e){
   System.out.println("ERROR");
   }
}
}

出现的错误


如果换另一台计算机就不会出现错误,或者将catch(Exception e)换为catch(ArithmeticException e)也不会出错,这是为什么???





class MyException extends Exception{
MyException(String message){
  super(message);
}
}
public class Test{}
会出现的错误



同样换台计算机也不会出现这样的错误,这是哪里出问题了???

1.jpg (10.75 KB, 下载次数: 23)

1.jpg

4 个回复

倒序浏览
我这里运行的没有发现错误。可能应该是你的jdk版本问题吧。
回复 使用道具 举报
本帖最后由 全海波 于 2012-7-19 10:08 编辑
  1. public class Test{


  2. public static void main(String args[]){

  3. try{

  4. System.out.println(2/0);

  5. }catch(Exception e){

  6. System.out.println("ERROR");

  7.                  }
  8.        }
  9. }
复制代码
这是我运行的结果,这应该跟系统版本或者JDK版本有关吧!
以下是我电脑运行的结果,能正常运行:

回复 使用道具 举报
这个程序运行是没有问题的
不过在这里提醒一下啊 这个程序中出现的异常是算术运算异常
而算术运算异常是运行时异常 即runtimeException
java中 对于运行时异常的处理策略是:尽量不使用try...catch 处理 而是在开发调试阶段尽量避免
回复 使用道具 举报
谢谢大家的建议 ,我在调试改改
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马