java中IO流操作的标准异常类

 1 package 加入异常处理的字节流操作;
 2 
 3 import java.io.FileNotFoundException;
 4 import java.io.FileOutputStream;
 5 import java.io.IOException;
 6 
 7 /*
 8  * 加入异常处理的字节流操作
 9  */
10 public class OutpurDemo {
11     public static void main(String[] args) {
12 
13         FileOutputStream fos = null; // 如果后面不能初始化则会导致空指针异常
14         try {
15             fos = new FileOutputStream("h\fos.txt");
16             fos.write(("java").getBytes());
17         } catch (FileNotFoundException e) {
18             e.printStackTrace(); // 捕获文件对象不能成功创建的异常
19         } catch (IOException e) {
20             e.printStackTrace(); // 在写文件的时候会有IO异常
21         } finally {
22             // 为了保证close一定执行就放进finally里面
23             // 如果fos不是null才需要close
24             if (fos != null) {
25                 try {
26                     fos.close();
27                 } catch (IOException e) {
28                     e.printStackTrace();
29                 }
30             }
31         }
32     }
33 }
  1. /*
  2. * throw:如果出现了异常情况,我们可以把该异常抛出,这个时候的抛出的应该是异常的对象。
  3. *
  4. * throws和throw的区别(面试题)
  5. throws
  6. 用在方法声明后面,跟的是异常类名
  7. 可以跟多个异常类名,用逗号隔开
  8. 表示抛出异常,由该方法的调用者来处理
  9. throws表示出现异常的一种可能性,并不一定会发生这些异常
  10. throw
  11. 用在方法体内,跟的是异常对象名
  12. 只能抛出一个异常对象名
  13. 表示抛出异常,由方法体内的语句处理
  14. throw则是抛出了异常,执行throw则一定抛出了某种异常
  15. */
原文地址:https://www.cnblogs.com/fuck1/p/5322312.html