java中当子线程抛出异常时母线程继续执行还是整个程序终止?

每个线程都要去处理自己的事情,包括异常。当所有的线程都结束的时候才说明程序运行Over了。子线程抛它的异常,母线程接着做它的事情,如果子线程的异常被捕获,且在处理异常时没有结束这个线程,那么线程是会继续执行下去的,如果没有处理异常,那子线程就要结束了,但是它不会影响到母线程。
java中当子线程抛出异常时母线程继续执行还是整个程序终止?
子线程被创建后就跟母线程没什么关系了。每个线程都要去处理自己的事情,包括异常。当所有的线程都结束的时候才说明程序运行Over了。子线程抛它的异常,母线程接着做它的事情,如果子线程的异常被捕获,且在处理异常时没有结束这个线程,那么线程是会继续执行下去的,如果没有处理异常,那子线程就要结束了,但是它不会影响到母线程。2013-08-29
子线程,抛不出异常的,run方法内,必需catch异常

如果有严重异常,一般是子线程自己终止。非常严重,才会导致整个程序退出2013-08-29
mengvlog 阅读 9 次 更新于 2025-07-19 19:14:34 我来答关注问题0
  •  test黄 java 中什么时候抛异常,什么时候try/catch?谢谢!

    1、在通用的方法里,不要try去捕获错误,而是直接抛出异常给调用层处理 2、用户访问界面处理掉所有可能的异常,并记录详细错误日志,然后返回友好的错误界面给用户,不要抛异常给用户,不友好

  • anonymous 关于java throw NumberFormatException的问题

    数字格式化错误,如果你的参数字符串不是数字的话,经过Integer.valueOf(argument)就会抛出NumberFormatException异常。表示将字符串解析成int类型数字出现异常。

  •  清正且奇巧的丁香 Java出现???h???

    如果在 Java 代码中出现了 ???h???,这可能是由于编码问题导致的。具体地说,这可能是由于使用了非 UTF-8 编码保存了包含中文的源代码文件,或者在编译 Java 代码时使用了错误的编码格式。为了解决这个问题,可以尝试以下方法:确认编码格式:使用合适的文本编辑器打开 Java 代码文件,并确认其编码格式...

  •  深空游戏 java中try和if的区别

    另一方面,try catch 语句块主要用于捕获程序运行时可能出现的异常情况。当 try 块中的代码执行过程中遇到错误,例如数据类型转换失败、空指针异常等,它会抛出一个异常,此时程序会跳转至 catch 块中执行相应的异常处理代码。如果 try 块中的代码没有产生异常,则程序会继续执行 try 块内的代码,而不会...

  •  gechuanwyr Java java.lang.NumberFormatException: empty String

    String s = "xxxxx";int number = Integer.parseInt(s);只有在s里的字符串是整数类型,它才会转型成功,如果s是空值或者是非数字字符串,就会出现类型转换异常。建议你在转型先增加如下判断并对异常进行捕获处理 int number = 0 ;if(s != null && !s.trim().equals("")){ try{ int number ...

檬味博客在线解答立即免费咨询

Java相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部