7.19 Java基础 | 异常

异常

理解:程序执行期间发生的意外事件

语法

复制代码
try{
    //可能会出现异常的代码放到这里
}catch(ExceptionType e){
    //出现异常后可以在这里输出提示
    System.out.println(e1.getMessage());
}finally{
    //finally块无论是否发生异常都执行
}

捕获多个异常:

复制代码
try{

}catch(ExceptionType1 e1){

}catch(ExceptionType1 e2){

}

异常处理:

Java异常处理 使用了5个关键字:throw、throws、try、catch、finally

1、throw抛出异常:

方法内部 使用,常搭配if使用

代码示例:

运行结果:

2、throws

用在方法构造方法的定义 上,声明 其中可能发生的异常的类型 , 但最后只能抛出一种

public static void fun() throws 异常1,异常2,异常3....{

}

自定义异常

java自带的异常太多,记不过来,这时候我们可以学会自定义异常。

自定义运行时异常:

public class 类名 extends RuntimeException{}

自定义检查异常语法:

public class 类名 extends Exception{}

自定义异常的命名通常是:场景描述+Exception,例如:用户名不存在异常 UsernameNotfoundException

自定义使用示范:

在登陆时,账号密码不对,则出现账号不存在、密码错误的异常提示

1、共三个java,两个异常,一个登陆界面

2、账号异常

3、密码异常

4、login.java

5、运行结果

其他注意:

运行时异常可以不用处理

父类抛出多个异常,子类覆盖父类方法时候,只能抛出相同异常或者这个异常的子类

父类方法没有抛出异常,子类覆盖父类不可抛出检查异常。

相关推荐
Littlewith44 分钟前
Node.js:Stream、模块系统
java·服务器·开发语言·node.js·编辑器
名字不要太长 像我这样就好1 小时前
【iOS】消息传递和消息转发
开发语言·学习·macos·ios·objective-c
qq_366336371 小时前
JUC并发包CountDownLatch减法计数器的使用实例(多线程)
java·开发语言·算法
拉一次撑死狗1 小时前
Python绘制数据(二)
开发语言·python·信息可视化
屁股割了还要学1 小时前
【C语言进阶】题目练习(3)
c语言·开发语言·c++·学习·算法·青少年编程
白日依山尽yy2 小时前
SpringBoot项目部署至云服务器
java·spring boot·后端
典孝赢麻崩乐急2 小时前
Java学习--------消息队列的重复消费、消失与顺序性的深度解析
java·开发语言·学习
西猫雷婶2 小时前
python学智能算法(十九)|SVM基础概念-超平面
开发语言·人工智能·python·深度学习·算法·机器学习·支持向量机
汤姆yu3 小时前
基于springboot的考研互助小程序
java·spring boot·后端·考研互助
MoFe13 小时前
【.net core】支持通过属性名称索引的泛型包装类
java·开发语言·.netcore