「java手动抛出异常」java手动抛出异常例子
今天给各位分享java手动抛出异常的知识,其中也会对java手动抛出异常例子进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
java异常处理存在的意义是什么?
Java中异常处理的意义主要有两个方面:
一是为了给用户友好的提示,不至于遇到特殊情况程序终止或者出现一堆报错信息,处理之后就可以自定义一些指导建议提供给用户;
异常处理方法:Java提供特有的语句进行处理异常。
try{
需要被检测的代码。
}
catch(异常类 变量){
处理异常的代码。
}
finally{
一定会执行的语句。
}
throws:声明方法可能要抛出的异常。
throw:手动抛出异常。
异常在子类覆盖中的体现:
①子类覆盖父类时,如果父类方法抛出异常,那么子类的覆盖方法,只能抛出父类的异常或该异常的子类。
②父类方法抛出多个异常,那么子类在覆盖该方法时,只能抛出父类异常的子集。
③如果父类或者接口的方法没有抛出异常,那么子类在覆盖方法时,也不可以抛出异常。
④如果子类方法发生了异常。就必须进行try处理,绝对不能抛出。
java抛出异常
抛出异常分为两种吧,一种是制造异常,一种是抛出可能发生的异常
throw关键字,抛出一个异常(即制造一个异常),用法 throw 异常 ,该异常必须为java.lang.Exception的子类,如果是RuntimeException子类的话,则不需要捕获或抛出异常。
throws关键字,抛出一个可能发生的异常,用在函数定义中,末尾处,以主函数为例子,public static void main(String[] args) throws 异常; 该异常必须为Exception子类,常用于其子类,是这一个方法体执行中可能抛出(throw)的异常处理。如果不进行throws,也可以用try...catch语句进行捕获。
自定义异常,类一定(间接)继承java.lang.Exception类,当然,继承java.lang.RuntimeException就可以不用进行处理,下面举一个例子:
public class TestException extends Exception {
public TestException(String message) {
super(message);
}
public TestException() {}
}
一般自定义异常需要有2个构造函数,五参构造器和String类型构造器,有参构造调用父类有参构造。
java中 方法中抛出异常处理方法
Java语言提供两种异常处理机制:捕获异常和声明抛弃异常。
1、捕获异常:
(1)在Java程序运行过程中系统得到一个异常对象是,它将会沿着方法的调用栈逐层回溯,寻找处理这一异常的代码。
(2)找到能够处理这种类型异常的方法后,运行时系统把当前异常交给这个方法处理;如果找不到可以捕获异常的方法,则运行时系统将终止,相应的Java程序也将退出。
(3)捕获异常是通过try-catch-finally语句实现的。语法为:
try{
...
}catch(ExceptionName1 e){
...
}catch(ExceptionName2 e){
...
}
...
}finally{
...
}
2、声明抛弃异常:
(1)当Java程序运行时系统得到一个异常对象时,如果一个方法并不知道如何处理所出现的异常,则可在方法声明时,声明抛弃异常。
(2)声明抛弃异常是在一个方法声明中的throws子句中指明的。如:
public int read() throws IOException{
...
}
其中throws IOException就是声明抛弃异常,throws后可以跟多个异常类型。
扩展资料:
程序设计语言的异常机制:
1、多数语言的异常机制的语法是类似的:用throw或raise抛出一个异常对象(Java或C++等)或一个特殊可扩展的枚举类型的值(如Ada语言);
2、异常处理代码的作用范围用标记子句(try或begin开始的语言作用域)标示其起始,以第一个异常处理子句(catch, except, resuce等)标示其结束;可连续出现若干个异常处理子句,每个处理特定类型的异常。
3、某些语言允许else子句,用于无异常出现的情况。更多见的是finally, ensure子句,无论是否出现异常它都将执行,用于释放异常处理所需的一些资源。
(1)C++异常处理是资源获取即初始化(Resource-Acquisition-Is-Initialization)的基础。
(2)C语言一般认为是不支持异常处理的。Perl语言可选择支持结构化异常处理(structured exception handling)。
(3)Python语言对异常处理机制是非常普遍深入的,所以想写出不含try, except的程序非常困难。
参考资料来源:
百度百科-异常处理
JAVA如何抛出异常
首先如果抛出jdk已有的异常,比如说抛出一个空指针异常,就这样:
throw new NullPointerException();这算抛出了一个空指针异常
throw new NullPointerException(“也可以在这里加一些异常信息描述”);
然后如果你想抛出一个自己定义好的异常,那么首先要声明一个异常类,
然后抛出的方法一样。
关于java手动抛出异常和java手动抛出异常例子的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。
发布于:2023-01-22,除非注明,否则均为
原创文章,转载请注明出处。