12.11 Exception
12.11exception
1.类别
检查性异常:用户错误或者问题引起的异常,此类异常程序员无法预见。例如:打开一个不存在的文件,用户输入错误(在只能输数字的地方输入汉字)......
运行时异常:可能被程序员避免的异常。
错误:脱离程序员的控制,例如栈溢出等等。
2.异常的体系结构

3.异常处理机制
抛出异常,捕获异常。
try{
//可能出现异常的代码段
}
catch(/*可能出现的异常类型*/){
//发生异常后执行catch里面的代码段
//可以输出异常类型或者结束程序(System.esit())或者打印异常栈信息
}finally{
//处理善后工作,finally可以不要。
}
注意事项
try catch必须要,finally可以不用。
可以有多个catch,catch捕获的异常必须是从小到大。
主动抛出异常
主动抛出异常一般用在方法中使用
通过throw和throws关键字,其中throw用在方法里,throws用在方法外
main()
{
int a=1;
int b=0;
new test().sum(a, b);
}
public void sum(int a,int b)
{
if(b==0)
{
throw new ArithmeticException();
}
System.out.println(a/b);
}
结果:


throws:
main()
{
try {
int a=1;
int b=0;
new test().sum(a, b);
}catch (ArithmeticException e)
{
e.printStackTrace();
}
}
public void sum(int a,int b) throws ArithmeticException
{
if(b==0)
{
throw new ArithmeticException();
}
System.out.println(a/b);
}
}
结果:

意义
通过throws关键字可以使程序在遇到异常时继续执行下去而不是直接停止。
4.自定义异常
通常是自己写一个类,该类继承Exception。


输出结果:

5.总结

12.11 Exception的更多相关文章
- mac 安装 XX-Net-3.12.11
目录 一 下载xx-net稳定版 二 使用Chrome浏览器 三 开启IPv6 mac禁用SIP机制 SIP 步骤 其他 附完整的csrutil命令 一 下载xx-net稳定版 github稳定版-X ...
- 下载安装配置 Scala-2.12.11
文章更新于:2020-03-24 安装惯例,文件附上链接放在文首. 文件名:scala-2.12.11.tgz 文件大小:19.83 MB 下载链接:https://downloads.lightbe ...
- 【转】Setting up SDL Extension Libraries on Code::Blocks 12.11
FROM: http://lazyfoo.net/tutorials/SDL/06_extension_libraries_and_loading_other_image_formats/window ...
- 【转】Setting up SDL 2 on Code::Blocks 12.11
FROM: http://lazyfoo.net/tutorials/SDL/01_hello_SDL/windows/codeblocks/index.php Setting up SDL 2 on ...
- CentOS5.4下安装codeblocks 12.11
centos6.3下安装codeblock简单多了,这些开源的软件也都在不断进步.原来装过codeblocks10.05,忘了,这次安装又花了我半天时间,最后总算搞定. 先是安装了wxGTK-2.8. ...
- 2019.12.11 java程序中几种常见的异常以及出现此异常的原因
1.java.lang.NullpointerException(空指针异常) 原因:这个异常经常遇到,异常的原因是程序中有空指针,即程序中调用了未经初始化的对象或者是不存在的对象. 经常出现在创建对 ...
- 2019.12.11 java数组练习
class AmHW { public static void main(String[] args) { /* 统计一个公司三个销售小组中每个小组的总 销售额以及整个公司的销售额.如下所示 第一小组 ...
- 利用谷歌翻译网站和Adobe Acrobat翻译英文文档,且鼠标放置后显示英文原文(无字数限制)(18/12/11更新)
软件:Adobe Acrobat 网页:https://translate.google.cn/?tr=f&hl=zh-CN 方法: 第一步:用Adobe Acrobat 打开英文 ...
- Daily Scrum Meeting ——ThirdDay(Beta)12.11
一.Daily Scrum Meeting照片 二.Burndown Chart 三.项目进展(check-in) 1.欢迎界面的优化,从模糊到清楚 2.新增主界面背景 3.新增注册背景 4.参与者侧 ...
随机推荐
- Solution -「LOCAL」解析电车
\(\mathcal{Description}\) 给定 \(n\) 个点 \(m\) 条边的无向图,每条边形如 \((u,v,r)\),表示 \(u,v\) 之间有一条阻值为 \(r\Omega ...
- 关于IDA无法从symbol server下载pdb的问题
在ida目录下,symsrv.dll同目录下创建一个symsrv.yes文件. symsrv.yes将可下载: symsrv.no将失败: 没有相关文件将会弹出授权询问,选择yes和no将创建对应文件 ...
- Dubbo扩展点应用之三异步调用
Dubbo不只提供了堵塞式的同步调用,同时提供了异步调用的方式.这种方式主要应用于提供者接口响应耗时明显,消费者端可以利用调用接口的时间去做一些其他的接口调用,利用Future模式来异步等待和获取结果 ...
- swagger 2.0
1.引入jar包 <dependency> <groupId>io.springfox</groupId> <artifactId>springfox- ...
- Devops 开发运维高级篇之微服务代码上传和代码检查
Devops 开发运维高级篇之微服务代码上传和代码检查 微服务持续集成(1)-项目代码上传到Gitlab 微服务持续集成(2)-从Gitlab拉取项目源码 微服务持续集成(3)-提交到SonarQub ...
- Kubernetes:更新与回滚
Blog:博客园 个人 除了创建,Deployment 提供的另一个重要的功能就是更新应用,这是一个比创建复杂很多的过程.想象一下在日常交付中,在线升级是一个很常见的需求,同时应该尽量保证不能因为升级 ...
- 自助BI工具是BI行业发展的趋势吗?
自助BI和分析通过提供交互式数据可视化,图表,图形,报告和分析,帮助业务用户做出决策.将大量数据导出到电子表格以转换为图表和数据透视表的日子现在已经结束.自助BI工具提供基于浏览器的客户端界面,适用于 ...
- 零售BI:为什么说零售行业非上一套企业BI系统不可?
如果你要问为什么现在越来越多的零售企业都会在公司上一套企业BI系统,这边文章就能解答你的疑惑. 2016年10月,马云在云栖大会上提出了"新零售"概念.在新零售时代,数字化转型打通 ...
- C# Control.BeginInvoke、synchronizationcontext.post、delegate.BeginInvoke的运行原理
背景 用到的知识点 1.windows消息机制 备注:鼠标点击.键盘等事件产生的消息要放入系统消息队列,然后再分配到应用程序线程消息队列.软件PostMessage的消息直接进入应用程序线程消息队列, ...
- 【C# 线程】ContextBoundObject类 --上下文绑定 和SynchronizationAttribute属性 、同步域
NET上下文的概念 应用程序域是进程中承载程序集的逻辑分区,在应用程序域当中,存在更细粒度的用于承载.NET对象的实体,上下文是用来确定对象的逻辑归属,那就.NET上下文Context.所有的.NET ...