您的位置:首页 > 新闻 > 会展 > 深圳市住房和建设局红色警示_企业logo设计意义_网络推广怎么找客户_找客户资源的软件哪个最靠谱

深圳市住房和建设局红色警示_企业logo设计意义_网络推广怎么找客户_找客户资源的软件哪个最靠谱

2024/10/5 20:02:02 来源:https://blog.csdn.net/WYyyyyyy_1998/article/details/142656281  浏览:    关键词:深圳市住房和建设局红色警示_企业logo设计意义_网络推广怎么找客户_找客户资源的软件哪个最靠谱
深圳市住房和建设局红色警示_企业logo设计意义_网络推广怎么找客户_找客户资源的软件哪个最靠谱

1.java内置的异常类可以处理大部分异常情况。此外,用户还可以自定义异常,只需继承Exception类即可。

2.在程序中使用自定义异常类,大体可分为以下几个步骤:

(1)创建自定义异常类
(2)在方法中通过throw关键字抛出异常对象
(3)如果在当前抛出异常的方法中处理异常,可以使用try-catch语句捕获并处理;否则在方法的声明处用throws关键字指明要抛出给方法调用者的异常,继续进行下一步操作。
(4)在出现异常方法的调用者中捕获并处理异常

3.实例代码:

首先定义了一个自定义异常类 MyException,它扩展自 Java 的 Exception类。主要功能如下:
(1)字段: private int detail; 用于存储异常的具体信息,通常是一个数字。
(2)构造函数: public MyException(int a) 接受一个整数参数 a,并将其赋值给 detail 字段。
(3)toString方法: 重写了 toString 方法,返回包含 detail 信息的字符串,用于描述异常。
这个类在数字大于 10 时抛出。

package com.exception;//自定义的异常类
public class MyException extends Exception{ //继承Exception类//传递数字>10就抛出异常,定义int类型的变量private int detail;//写一个有参构造,快捷键 alt+insertpublic MyException(int a) {this.detail = a;}//重写toString方法,自定义异常,快捷键 alt+insert选择toString@Overridepublic String toString() {//会抛出的异常信息return "MyException{" +"detail=" + detail +'}';}
}

定义了一个类 Test3,其中包含一个静态方法 testmain 方法。具体功能如下:
test 方法: 接受一个整数 a,并抛出 MyException 异常。如果 a 大于 10,则抛出自定义异常;否则,打印 “OK”。
main 方法: 在 try 块中调用 test(11),由于 11 大于 10,抛出 MyException。在 catch 块中捕获该异常,并打印异常信息。

package com.exception;public class Test3 {//定义test方法static void test(int a) throws MyException {    //捕获异常System.out.println("传递的参数为:" + a);if(a>10){throw new MyException(a);   //抛出异常}System.out.println("OK");   //a<=10时输出}public static void main(String[] args){/*调用test方法,由于在test方法定义中使用了throws throw,调用的时候必须要try catch 捕获异常*/try {test(11);} catch (MyException e) {   //e会调用toString方法System.out.println("MyException=> " + e);}}}

结果:
在这里插入图片描述

4.总结

(1)运行时,逻辑合理,辅助try-catch处理(程序就不至于突然卡死)
(2)多重catch块后面,加一个catch(Exception)处理可能被遗漏的异常
(3)对于不确定的代码,也可以加上
try-catch
,处理潜在异常
(4)尽量去处理异常,切忌只是简单地调用printStackTrace() 去打印输出
(5)具体如何处理异常,要根据不同的业务需求和异常类型去决定
(6)尽量添加finally语句块去释放占用的资源

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com