编写程序java用户自定义异常

编写程序java用户自定义异常,第1张

public class Test {

 public static void main(String[] args){

  int m=110;

  try{

   if(m>60&&m<100)

    Systemoutprintln("正常");

   else throw new IdendException(m);

  }catch(IdendException e){

   Systemoutprintln(e);

  }

  

 }

}

public class IdendException extends Exception {

 IdendException(int m){

  Systemoutprintln("数据异常:"+m);

 }

}

 

class MyException extends Exception //自定义的异常类 继承Exception类

{

private String exceptionName; //定义一个私有变量,用来为自定义异常

public MyException(){} //创建一个无参数的构造函数

public MyException(String exceptionName){ //创建一个有参数的构造函数,传入的参数为前面定义的异常名称

thisexceptionName=exceptionName;

}

public String getExceptionName(){ //定义一个方法,提供给外部来获取私有变量

return thisexceptionName;

}

public static void main(String [] args){

try{

Systemoutprintln("自定义的异常类对象");

throw new MyException("自定义的异常");//抛一个自定义的异常类对象,传入的参数就是给控制台看的异常

}catch(MyException e){

Systemoutprintln("异常信息:"+egetExceptionName());

}

}

}

我已经尽力你……你懂的!

异常处理功能提供了处理程序运行时出现的任何意外或异常情况的方法。异常处理使用 try、catch 和 finally 关键字来尝试可能未成功的 *** 作,处理失败,以及在事后清理资源。

异常可以由公共语言运行库 (CLR)、第三方库或使用 throw 关键字的应用程序代码生成。

异常具有以下特点:

1在应用程序遇到异常情况(如被零除情况或内存不足警告)时,就会产生异常。

2发生异常时,控制流立即跳转到关联的异常处理程序(如果存在)。

3如果给定异常没有异常处理程序,则程序将停止执行,并显示一条错误信息。

4可能导致异常的 *** 作通过 try 关键字来执行。

5异常处理程序是在异常发生时执行的代码块。在 C# 中,catch 关键字用于定义异常处理程序。

6程序可以使用 throw 关键字显式地引发异常。

7异常对象包含有关错误的详细信息,其中包括调用堆栈的状态以及有关错误的文本说明。

8即使引发了异常,finally 块中的代码也会执行,从而使程序可以释放资源。

异常处理理论上有两种基本模型

一种称为"终止模型"(它是Java与C++所支持的模型)在这种模型中,将假设错误非常关键,将以致于程序无法返回到异常发生的地方继续执行一旦异常被抛出,就表明错误已无法挽回,也不能回来继续执行

另一种称为"恢复模型"意思是异常处理程序的工作是修正错误,然后重新尝试调动出问题的方法,并认为的二次能成功

对于恢复模型,通常希望异常被处理之后能继续执行程序在这种情况下,抛出异常更像是对方法的调用--可以在Java里用这种方法进行配置,以得到类似恢复的行为(也就是说,不是抛出异常,而是调用方法修正错误)或者,把try块放在while循环里,这样就可以不断的进入try块,直到得到满意的结果

虽然恢复模型开始显得很吸引人,并且人们使用的 *** 作系统也支持恢复模型的异常处理,但程序员们最终还是转向了使用类似"终止模型"的代码因为:处理程序必须关注异常抛出的地点,这势必要包含依赖于抛出位置的非通用性代码这增加了代码编写和维护的困难,对于异常可能会从许多地方抛出的大型程序来说,更是如此

抛出异常是为了在你的程序运行错误的情况下,程序也能继续执行下面的代码,而不会跳出这个的程序运行,

异常可以是专门写的方法,也可以是用户自定义的异常情况,那就是一般方法中异常的处理了

以上就是关于编写程序java用户自定义异常全部的内容,包括:编写程序java用户自定义异常、如何用Java程序来编写一个异常、有哪位高手能告诉我异常处理机制指的是什么意思等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9484627.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-28
下一篇2023-04-28

发表评论

登录后才能评论

评论列表(0条)

    保存