异常处理的方式二:throws+异常类型
package com.yhqtv.demo01Exception; import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException; /*
* 异常处理的方式二:throws+异常类型
*
*1.“throws+异常类型”写在方法的声明处,指明此方法执行时,可能会抛出的异常类型,
* 一旦当方法执行时,出现异常,仍会在异常处生成一个异常类的对象,此对象满足throws后异常
* 类型时,就会被抛出,异常代码后续的代码,就不再执行。
*
* 2.体会:try-catch-finally:真正的将异常给处理掉了、
* throws的方式只是将异常抛给了方法的调用者,并没有真正将异常处理。
*
*3.开发中如何尊的使用两种处理异常方法?
* a.如果父类中被重写的方法没有throws方式处理异常,则子类重写的方法也不能使用throws,意味着如果
* 子类重写的方法中有异常,必须使用try-catch-finally方式处理。
* b.执行的方法a中,先后又调用了另外的几个方法,这几个犯法是递进关系执行的,我们建议这几个方法
* 使用throws的方式处理。而执行的方法a可以考虑使用try-catch-finally方式进行处理。
*
*
* 方法重写的规则之一:
* 子类重写的方法抛出的异常类型不大于父类的被重写的方法抛出的异常类型
* */
public class ExceptionTest2 { public static void main(String[] args) {
try{
method2();
}catch (IOException e){
e.printStackTrace();
} } public static void method2() throws IOException { method1();
} public static void method1() throws FileNotFoundException, IOException { File file = new File("hello.txt");
FileInputStream fis = new FileInputStream(file); int data = fis.read();
while (data != -1) {
System.out.println((char) data);
data = fis.read(); }
fis.close(); } }
异常处理的方式二:throws+异常类型的更多相关文章
- java 面向对象(二十九):异常(二)异常的处理
1.java异常处理的抓抛模型过程一:"抛":程序在正常执行的过程中,一旦出现异常,就会在异常代码处生成一个对应异常类的对象. * 并将此对象抛出. * 一旦抛出对象以后,其后的代 ...
- Python异常类型及处理、自定义异常类型、断言
异常的概念.识别报错信息 异常处理 断言的基本使用 异常类型(异常就是报错) 常见异常 NameError:名称错误 SyntaxError:语法错误 TypeError:类型错误 错误回溯 查看报错 ...
- springmvc在处理请求过程中出现异常信息交由异常处理器进行处理,自定义异常处理器可以实现一个系统的异常处理逻辑。为了区别不同的异常通常根据异常类型自定义异常类,这里我们创建一个自定义系统异常,如果controller、service、dao抛出此类异常说明是系统预期处理的异常信息。
springmvc在处理请求过程中出现异常信息交由异常处理器进行处理,自定义异常处理器可以实现一个系统的异常处理逻辑. 1.1 异常处理思路 系统中异常包括两类:预期异常和运行时异常RuntimeEx ...
- java异常处理 throw RuntimeException时不需要同时方法中声明抛出throws 异常等待调用者catch进行捕获 子父类异常问题
package com.swift.exception1; public class Demo_Exception { public static void main(String[] args) { ...
- C# 异常处理最佳实践,解决代码分析提示CA1031:不要捕捉一般异常类型的解决办法
异常类型 异常一般分为系统异常 和 应用异常.系统异常有无法连接数据库,而应用异常是业务逻辑异常,比如授权失败. 在 C# 中异常基于 System.Exception,派生出 System.Syst ...
- 黑马程序员——【Java基础】——面向对象(二)异常机制、包(Package)
---------- android培训.java培训.期待与您交流! ---------- 一.异常机制 (一)异常概述 1.异常:就是程序在运行时出现不正常情况. 2.异常类:程序在运行时,出现的 ...
- JAVA 异常类型结构分析
JAVA 异常类型结构分析 Throwable 是所有异常类型的基类,Throwable 下一层分为两个分支,Error 和 Exception. Error 和 Exception Error Er ...
- JAVA(二)异常/包及访问权限/多线程/泛型
成鹏致远 | lcw.cnblog.com |2014-01-28 异常 1.异常的基本概念 异常是导致程序中断运行的一种指令流 基本的异常处理格式:try...catch,try中捕获异常,出现异常 ...
- java异常处理的throw和throws的区别
1. 区别 throws是用来声明一个方法可能抛出的所有异常信息,throws是将异常声明但是不处理,而是将异常往上传,谁调用我就交给谁处理.而throw则是指抛出的一个具体的异常类型. 2.分别介绍 ...
随机推荐
- Python python 五种数据类型--列表
# 列表的定义 var1 = [] var2 = list() print(type(var1)) #<class 'list'> print(type(var2)) #<class ...
- flask中温柔显示404等错误
写下下面两个视图函数,然后在模板中写下错误时展现的内容,当然模板名,函数名是可以改的哟@app.errorhandler(404)def page_not_found(error): return r ...
- [noip模拟]B<构造>
[题目描述] 在两个n*m的网格上染色,每个网格中被染色的格子必须是一个四联通块(没有任何格子被染色也可以),四联通块是指所有染了色的格子可以通过网格的边联通,现在给出哪些格子在两个网格上都被染色了, ...
- .Net微服务实践(一):微服务框架选型
微服务框架 微服务(Microservices)是一种架构风格,一个大型复杂软件应用由一个或多个微服务组成.系统中的各个微服务可被独立部署,各个微服务之间是松耦合的.每个微服务仅关注于完成一件任务并很 ...
- Activiti网关--排他网关
排他网关 1.什么是排他网关 排他网关(也叫异或(XOR)网关,或叫基于数据的排他网关),用来在流程中实现决策. 当流程执行到这个网关,所有分支都会判断条件是否为true,如果为 true 则执行该分 ...
- Zookeeper是如何实现分布式锁的
[toc] Zookeeper是如何实现分布式锁的 标签 : Zookeeper 分布式 实现分布式锁要考虑的重要问题 1. 三个核心要素 加锁, 解锁, 锁超时 2. 三个问题 要保证原子性操作, ...
- VM虚拟机复制文件问题
需要安装好vmtools,安装好后,启动虚拟机环境: 把需要复制的文件拖进虚拟机环境窗口,鼠标指针会变成复制图标,直接左键即可复制: 不能Ctrl+c-Ctrl+v进去.
- Jmeter 压力测试笔记(3)--脚本调试/签名/cookie/提升吞吐量/降低异常率/提升单机并发性能
import XXXsign.Openapi2sign;---导入jar包中的签名方法 String str1 = "12121"; ---需要被签名的字段:向开发了解需要哪些哪些 ...
- TC1.6SourceCode java课程表
/** * @version 2.0 * @author sharks */ /** * Instruction * this version will use IO * apply file to ...
- MTK Android Driver :Memory
型号配置: 1.CUSTOM_MEMORY_HDR(需要确认是否是MTK认证的flash ic) mediatek\custom\$(PROJECT)\preloader\inc\custom_Mem ...