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(); } }

最新文章

  1. redis-cluster 迁移过程错误记录
  2. PL/SQL Developer 和 instantclient客户端安装配置(图文)
  3. 【Quartz】Quartz的搭建、应用(单独使用Quartz)
  4. vs2010 vc++ 统一修改所有工程的目录配置
  5. iptables & selinux
  6. js中的 !!
  7. jQuery中 判断事件
  8. 【行为型】Memento模式
  9. codeforces284 div1 B:概率dp
  10. BEncoding的编码与解码
  11. VR全景是继互联网后的第二王朝吗?
  12. 经验之谈——gulp使用教程
  13. android 人脸检测你一定会遇到的坑
  14. assert断言
  15. react16 渲染流程
  16. Net中获取程序集路径
  17. undefined reference to `pthread_create'
  18. ADB驱动
  19. python函数之第一类对象
  20. Git应用—01初始化项目

热门文章

  1. iOS 性能优化点
  2. HashMap中使用自定义类作为Key时,为何要重写HashCode和Equals方法
  3. AOJ 2214: Warp Hall(计数+dp)
  4. phpStorm 激活方式
  5. CentOS6.10下安装mysql-5.7.24
  6. 大数据篇:Hive
  7. netcore webapi参数
  8. NKOJ 7.7练习题A IP地址
  9. Maven快照版本要这样用才真的香!
  10. window部署ftp服务器