Java修炼——异常的概念以及处理方式(捕获异常)
异常概念分类
异常( Exception 也称例外)就是在程序的运行过程中
所发生的不正常的事件,它会中断正在运行的程序
所需文件找不到
网络连接不通或中断
算术运算错 (被零除…)
数组下标越界
装载一个不存在的类或者对 null 对象操作
类型转换异常
……
当 Java 程序出现以上的异常时,就会在所处的方法 中产生一个异常对象。这个异常对象包括异常的类型, 异常出现时程序的运行状态以及对该异常的详细描述
异常的分类:
异常处理方式——捕获异常
捕获异常所使用的关键字 try 、catch 、finally
1)try-catch 组合
a)正常情况
b)异常情况,异常出现的类型与捕获的类型匹配
c)异常情况,异常出现的类型与捕获的类型不匹配
2)try-finally 组合
finally 是无论是否产生异常,都执行的代码,但是有 一种情况 finally 不执行,即退出 Java 虚拟机
package com.bjsxt.exception;
import java.util.Scanner;
public class CatchException {
public static void main(String[] args) {
int c;
try {
Scanner intput=new Scanner(System.in);
System.out.println("请输入被除数:");
int a=intput.nextInt();
System.out.println("请输入除数:");
int b=intput.nextInt();
c=a/b;
System.out.println("a/b的结果是:"+c);
// System.exit(0);
} finally {
System.out.println("finally里面的代码");
}
System.out.println("程序结束,谢谢你的使用!");
}
}
这是将system.exit(0)注释的情况下
这是将system.exit(0)取消注释的情况下
3)try-catch-finally 组合
a) 正常情况:执行 try-finally
b) 异常情况:类型相匹配,执行 try-catch-finally
c) 异常情况:类型不相匹配,执行 try-finally
如果在 catch 中存在 return 语句,则先执行完 finally 语句再回头执行 return 语句
Java修炼——异常的概念以及处理方式(捕获异常)的更多相关文章
- JAVA记录-异常基本概念
1.异常分类 2.错误和异常的区别 3.try-catch-xxx处理方式 Java Exception:1.Error 2.Runtime Exception 运行时异常3.Exception 4. ...
- Java中断异常 InterruptedException 的正确处理方式
你看到这篇文件可能是因为你已经调用了一个抛出 InterruptedException 异常的方法,并且需要以某种方式处理它. 首先,需要了解为一个方法为啥会 throws InterruptedEx ...
- Java学习:异常的概念
异常 异常概念 异常:指的是程序在执行过程中,出现的非正常的情况,最终导致JVM的非正常停止. 在Java等面向对象的编程语言中,异常本身是一个类,产生异常就是创建异常对象并抛出一个异常对象.Java ...
- java程序中抛出异常的两种方式,及异常抛出的顺序
在java中,会经常遇到异常,java提供了两种抛出异常的方式. 方式一: throws ,抛出具体代码中的异常,这种方式编译器都会提示,举例: public static void main(Str ...
- 异常的概念和Java异常体系结构
一. 异常的概念和Java异常体系结构 异常是程序运行过程中出现的错误.本文主要讲授的是Java语言的异常处理.Java语言的异常处理框架, 是Java语言健壮性的一个重要体现. Ja ...
- Java中异常关键字throw和throws使用方式的理解
Java中应用程序在非正常的情况下停止运行主要包含两种方式: Error 和 Exception ,像我们熟知的 OutOfMemoryError 和 IndexOutOfBoundsExceptio ...
- java中异常的面试
https://blog.csdn.net/qq_36523638/article/details/79363652 1) Java中的检查型异常和非检查型异常有什么区别? 这又是一个非常流行的Jav ...
- java学习--异常
异常的概念 java异常是java提供的用于处理程序中错误的一种机制 所谓的错误是指在程序运行过程中发生的一些异常事件.如除0溢出,数组下标越界,文件不存在 设计良好的程序应该在异常发生时,提供处理这 ...
- Java基础—异常
一.概念 异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的. 异常体 Throwable:所有异常类的超类 Error:它表示不希望被程序捕获或者是程序无法处理的错误 ...
随机推荐
- markdown 编辑器概述
markdown 编辑器概述 编辑器其实很多很多,主要分为 网页编辑和软件编辑 (效果其实感觉效果差不多,看个人喜好,笔者个人还是喜欢本地,感觉方便挺多的) ## 网页编辑器 主要有 C ...
- 2019年10月13日 spss习题 wangqingchao
1.spss发行版本的说法,正确的是:B a.两年发行一个新版本 b.一年发行一个新版本 c.没有任何规律 d.三年发行一个新版本 2.哪些是spss统计分析软件的基本窗口:A a.结果查看 ...
- Linux系统中nc工具那些不为人知的用法
Linux nc命令用法 参考地址:https://www.cnblogs.com/jjzd/p/6306273.html -g<网关>:设置路由器跃程通信网关,最多设置8个; -G< ...
- nyoj 103-A+B Problem II (python 大数相加)
103-A+B Problem II 内存限制:64MB 时间限制:3000ms 特判: No 通过数:10 提交数:45 难度:3 题目描述: I have a very simple proble ...
- 学习记录:《C++设计模式——李建忠主讲》4.“单一职责”模式
单一职责模式:在软件组件的设计中,如果责任划分的不清晰,使用继承得到的结果往往是随着需求的变化,子类急剧膨胀,同时充斥着重复代码,这时候的关键是划清责任. 典型模式:装饰模式(Decorator).桥 ...
- PHP中Redis扩展无法加载问题
问题: 在重启php-fpm的过程中,发生了如下的错误,redis.so无法载入 1 2 3 4 [root@brand009 modules]# /usr/sbin/php-fpm /usr/sbi ...
- 扛把子 选题 Scrum立会报告+燃尽图 03
此作业要求参见:https://edu.cnblogs.com/campus/nenu/2019fall/homework/8680 一.小组情况组长:迟俊文组员:宋晓丽 梁梦瑶 韩昊 刘信鹏队名:扛 ...
- 20191017-3 alpha week 2/2 Scrum立会报告+燃尽图 02
此作业要求参见https://edu.cnblogs.com/campus/nenu/2019fall/homework/9799 一.小组情况 队名:扛把子 组长:迟俊文 组员:宋晓丽 梁梦瑶 韩昊 ...
- Python和Java的区别
这里是我的一些总结,有些是参考别人的(在这里谢谢!!!) 区别: 1.Python比Java简单,学习成本低,开发效率高2.Java运行效率高于Python,尤其是纯Python开发的程序,效率极低3 ...
- 6. 彤哥说netty系列之Java NIO核心组件之Buffer
--日拱一卒,不期而至! 你好,我是彤哥,本篇是netty系列的第六篇. 简介 上一章我们一起学习了Java NIO的核心组件Channel,它可以看作是实体与实体之间的连接,而且需要与Buffer交 ...