黑马程序员技术交流社区

标题: 关于Catch 是单线程运行么?可我测试结果怎么是乱的? [打印本页]

作者: huanlong579    时间: 2016-3-17 00:24
标题: 关于Catch 是单线程运行么?可我测试结果怎么是乱的?
这个是我关于异常的测试,为什么结果不是按如下顺序显示(有时候):
aaaaaaaaaaaaaaaaaaaannnnnnn
Exception in thread "main" java.lang.RuntimeException: 抛出运行时异常
        at ItHeiMa.FangXin.throwRuntimeException(FangXin.java:35)
        at ItHeiMa.FangXin.main(FangXin.java:16)

  1.         public static void main(String[] args)
  2.         {
  3.                 try {
  4.                         FileInputStream f=new FileInputStream("a.text");
  5.                 } catch (Exception e) {
  6.                         System.out.println("aaaaaaaaaaaaaaaaaaaannnnnnn");
  7.                 }
  8.                
  9.                 throwRuntimeException(10);

  10.                 throwCheckedException(10);
  11.         }
  12.        
  13.         private static void throwCheckedException(int a)
  14.         {
  15.                 if(a>9)
  16.                         try {
  17.                                 throw new Exception("抛出检查异常");
  18.                         } catch (Exception e) {
  19.                                 // TODO Auto-generated catch block
  20.                                 e.printStackTrace();
  21.                         }       
  22.         }
  23.   
  24.         private static void  throwRuntimeException(int a)
  25.         {
  26.                 if(a>9)
  27.                         throw new RuntimeException("抛出运行时异常");
  28.         }
复制代码


多运行几次,结果可能如下:
Exception in thread "main" aaaaaaaaaaaaaaaaaaaannnnnnn
java.lang.RuntimeException: 抛出运行时异常
        at ItHeiMa.FangXin.throwRuntimeException(FangXin.java:35)
        at ItHeiMa.FangXin.main(FangXin.java:16)
或者如下:
Exception in thread "main" java.lang.RuntimeException: 抛出运行时异常
        at ItHeiMa.FangXin.throwRuntimeException(FangXin.java:35)
        at ItHeiMa.FangXin.main(FangXin.java:16)
aaaaaaaaaaaaaaaaaaaannnnnnn
Main方法不是单线程么?可每次运行结果为什么会不一样,求大神解释,谢谢!
C:\Documents and Settings\user\桌面
作者: huanlong579    时间: 2016-3-17 00:27
自己先顶一个,有木有大神解释一下,万分感谢!
作者: debuggerx01    时间: 2016-3-17 04:34
你debug看看线程变化情况呗~~
作者: huanlong579    时间: 2016-3-17 12:38
debuggerx01 发表于 2016-3-17 04:34
你debug看看线程变化情况呗~~

Debug,看起来是单线程
作者: huanlong579    时间: 2016-3-17 12:39
自己再顶一下,求大神,黑马大神么,给个解释,万分感谢

作者: huanlong579    时间: 2016-3-17 12:55
本帖最后由 huanlong579 于 2016-3-17 12:57 编辑

大神呢,求大神指教,在线等~




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