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 }
- /*
- * throw:如果出现了异常情况,我们可以把该异常抛出,这个时候的抛出的应该是异常的对象。
- *
- * throws和throw的区别(面试题)
- throws
- 用在方法声明后面,跟的是异常类名
- 可以跟多个异常类名,用逗号隔开
- 表示抛出异常,由该方法的调用者来处理
- throws表示出现异常的一种可能性,并不一定会发生这些异常
- throw
- 用在方法体内,跟的是异常对象名
- 只能抛出一个异常对象名
- 表示抛出异常,由方法体内的语句处理
- throw则是抛出了异常,执行throw则一定抛出了某种异常
- */