异常 JDK8新特性 特殊文件 Junit框架 | DAY 7

异常

异常体系

java.lang.Throwable

Exception

  • RuntimeException

  • 其他异常 编译异常

  • 运行时异常 编译阶段不会出现异常

    • 数组索引越=界

    • java不会干扰你 一般低级错误

  • 编译阶段异常 日期解析异常

    • 铺货异常 try { } catch(ParseException a){ a.printStackTrace();}

    • 抛出异常 类 throws PasrseException

自定义异常

throws

try-catch

异常对象封装问题

运行时异常

  1. 定义一个异常类 必须继承 extends RuntimeException

  2. 重写构造器

    1. 无参

    2. 有参

      1. 传出一个String

      2. super(这个String)

  3. 通过throw new 异常类(xxx)来创建异常对象并抛出

编译时异常

  1. 定义一个异常类继承Exception类

throw 抛出这个异常对象

throws 用在方法上 抛出方法内部的异常

异常处理

  • 底层异常往外抛 在最外层 捕获异常 记录异常并响应合适的信息给用户

  • 捕获异常 尝试重新修复

JDK8新特性

Lambda表达式

前提 并不是说简化全部匿名内部类的写法 只能简化函数式接口的匿名内部类

格式

(被重写方法的形参列表)->{
    被重写方法的方法体代码
}

stream流

File代表文件

IO读写数据

FILe是java.io 包下的类

file只能对文件本身进行操作 无法对文件内容进行操作

IO流 可以读写数据

创建对象

创建file对象指代某个具体文件

路径 :\\反斜杠双写 /斜杠不双写

分隔符 File.separator一般跨平台使用

file对象可以指向文件夹

也可以指代不存在的文件

常用方法

判断文件类型

exists 判断是否存在

isFile 判断是否文件

isDirectory 判断是否文件夹

getName 获取文件名称 包括后缀

length 获取文件大小

lastModified 获取文件最后修改时间

getPath 获取创建文件对象时使用的路径

getAbsolutePath 获取绝对路径

创建文件 删除文件

createNewFile 创建文件 程序担心不存在该路径会报错 直接抛出异常即可

mkdir 创建文件夹 只能创建一级文件夹

mdirs 创建文件夹 可以创建多级文件夹

delete 删除文件或空文件夹 不能删除非空文件夹 删除数据不会进入回收站

遍历文件夹

list 获取当前目录下所有一级文件 返回String数组

listFiles

  • 获取当前目录下所有一级文件对象到一个文件对象数组中

  • 如果有隐藏文件 依旧可以返回

  • 如果没有权限访问 返回null

特殊文件

普通文件 txt

随意写 随便写

属性文件 properties

每行存放一个键值对信息 存放用户名密码

xml文件

存储有关系的数据 作为系统的配置文件

Properties属性文件

只能是键值对

键不能重复

文件后缀是.properties

Properties

  • 是一个Map集合 但是一般不当集合使用

  • 核心作用 通过Properties可以读写属性文件里的内容

读取数据

  1. 创建properties对象(键值对集合 空容器)

  2. 开始加载属性文件中的键值对数据到properties对象中去

  3. 根据建取值 getProperties

  4. 遍历键 PropertyNmaes

XML文件

可扩展标记语言

  • <标签名> 成为一个标签或一个元素 一般成对出现

  • 标签名 可以自己定义 但必须要正确嵌套

  • xml中只能有一个根标签

  • xml标签可以有属性

解析xml文件数据

Dom4j 解析xml框架

  1. 创建解析器对象

  2. 使用saxReader对象把需要的xml文件读成一个document对象

  3. 从document解析xml全部数据

trim取出文本去除空格

写出到xml文件

把程序中的数据拼接成xml格式数据 然后使用字节输出流输出

约束xml文件编写

限制xml文件只能按照某种格式进行书写

约束文档 专门限制xml书写格式的文档

  • DTD文档 不能约束具体数据类型

  • Schema文档 .xsd

xml文件与html文件区别

xml区分大小写 

日志技术

把程序运行的信息 记录到文件中去 方便程序员定位bug 了解程序执行的情况等

日志技术体系

日志框架
  • JUL (java.util.loggiing)

  • Log4j

  • logback

    • logback-core

    • logback-classic

    • logback-access

  • 其他

日志接口
  • JCL

  • SLF4J

实现步

junit框架

单元测试

针对最小的功能单元进行测试 编写测试代码对其进行正确性测试

junit单元测试框架

编写测试方法 公共 无参 无返回值 声明@test注解

断言机制 Assert.assertEquals

@after 会在每一个测试方法执行之后执行

@before 会在每一个测试方法执行之前执行

@beforeClass 修饰静态方法 在所有测试方法之前只执行一次

@afterClass 修饰静态方法 在所有测试方法之后执行一次

before 一般初始化资源

after 一般释放资源

语句覆盖:确保代码中的每个语句至少执行一次。

分支覆盖:确保代码中的每个分支(如if-else语句)至少执行一次。

条件覆盖 确保代码中的每个布尔子表达式(如if语句中的条件)的结果(真/假)都至少执行一次。

路径覆盖:确保代码中的所有可能路径都至少执行一次。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值