首页 > 编程知识 正文

线程异常该如何处理,java如何实现线程同步

时间:2023-05-03 21:24:20 阅读:34683 作者:750

在Java中,Throwable是Exception和Error: 出现Error的情况下,程序会停止运行。

3358www.Sina.com/分为ExceptionRuntimeException

非运行时异常

RuntimeException可以处理也可以不处理,因为编译无法检测到类异常。

例如

nulpointerexceptionarithmeticexception (或ArrayIndexOutOfBoundException )等。

在这个主题被指控的情况下发生的是RuntimeException,是未检测到的异常,编译器可以不检查、处理该异常。

因此,异常被捕捉或抛出时,程序继续执行。

如果未捕获到异常,则该线程停止执行。

thread.uncaughtexceptionhandler是一个内置接口,用于处理线程由于未捕获的异常而导致的突然中断。

如果线程因未捕获的异常而中断,JVM将使用thread.getuncaughtExceptionhandler ()查询线程的uncaughtexceptionhandler,并将线程和异常作为参数

实例:

1 .未处理的运行时执行在发生异常时程序停止

public class main1{ publicstaticvoidmain (字符串[ ] args ) { int x=1; x=x/0; system.out.println(x='x ); }} 非运行时异常必须处理,比如thread中sleep()时,必须处理InterruptedException异常,才能通过编译。

exceptioninthread ' main ' Java.lang.arithmetic exception 3360/byzeroatmicrosoft 2018.main1. main (main1. Java :14 )

public class main1{ publicstaticvoidmain (字符串[ ] args ) { try{ int x=1; x=x/0; }catch(exceptione ) ({ System.out.println ) (“0错误除外”); e .打印堆栈跟踪(; } }} 输出:

0错误Java.lang.arithmetic exception :/byzeroatmicrosoft 2018.main1. main (main1. Java :14 )除外

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。