IO概述:
操作数据的工具
IO流,即数据流,数据像水流一样通过IO工具进行传输。
程序 <IO> 硬盘
绝对路径与相对路径
1:异常(理解)
(1)就是程序的非正常情况。
异常相关操作:
创建异常对象(JDK已定义的异常会自动创建对象,自定义异常需要手动创建)
抛出异常(JDK已有定义的异常会自动抛出异常,自定义异常需要手动抛出)
处理异常:
程序员在有异常抛出时,异常的处理方法有两种:(1)将异常捕获并处理(2)声明抛出异常
(2)异常的继承体系结构:
Throwable:
|--Error 严重的问题,不需要处理的。
|--Exception 非RuntimeException必须进行处理。两种方案,点击鼠标即可。
|--RuntimeException 运行时期异常,需要修正代码。
(3)jvm的默认处理方式:
默认情况下,jvm会采用默认处理方案:
把异常的全路径名称,原因,及位置等信息显示出来。
注意:
如果是jvm的默认处理方式,那么,它会在出问题的地方结束。
(4)我们自己的处理方案:
A:处理方式之一:使用捕获
try...catch...finally
基本格式:
try {
可能有问题的代码;
}catch(异常对象) {
对问题的处理;
}finally { //一定会执行的代码
释放资源;
}
变形格式:
try...catch
try...catch...catch
try...catch...catch...finally
try...finally
多异常处理方式:
分别捕获分别处理,每个try对应一个catch ( cn.itcast2.demo4)
package cn.itcast2; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; /* * 多个异常的捕获处理: * 1:分别捕获分别处理,每个try对应一个catch */ public class Demo4 { public static void main(String[] args) { DateFormat df = new SimpleDateFormat("yyyy-MM-dd"); try { Date parse = df.parse("2008-08-08"); System.out.println(parse); } catch (ParseException e) { System.out.println("您的日期格式有误,请换成2008-08-08的格式!"); } int a = 10; int b = 0; try { System.out.println(a/b); } catch (Exception e) { System.out.println("您的计算中,有数学错误,请更换数字"); } System.out.println("================"); } }