1.异常: 概述:程序中出现的不正常的现象
体系:顶层父类 Throwable error 错误不需要我们处理
Exception 异常(编译时异常)
虚拟机默认处理方式 1.提示程序出问题的原因的位置
2.停程序
手动处理: throws 声明异常 当我们不用自己处理,可以将异常的处理权交给调用者处理
try catch捕获异常 好处:程序可以继续运行
throw与throws的区别: throws作用:声明异常
语法;用在方法声明后面,跟的是异常类名
注意:声明的是编译时异常,调用者必须处理
throw作用:抛出异常对象
语法:用在方法体内,跟的是异常对象
注意:抛出的是编译时异常,必须在方法上声明
自定义异常:意义是为了让调用者能够见名知意
步骤:1.继承java已经提供的异常类
2.写上构造方法
3.throw抛出自定义的异常对象
2.单列集合Collection 概述:单列集合的最顶层接口
特点:存取时都是单个数据(每个数据都是孤立的)
遍历方式: 1.迭代器 作用:迭代器是专门操作单列集合对象的,可以通过迭代器对象对集合进行遍历操作
获取方式:集合对象.itertor();
常用方法:hasnext()判断是否有可迭代的元素,有则true,无则false
next()获取的是一个元素并将指针向后移动一位
remove()删除当前指针指向的元素
注意事项:再一次循环中,最多只能有一次next方法,如果使用多次,可能会出现运行时异常
2.增强for 语法格式 for(元素的数据类型 变量名:集合名或数组名){
变量名就是集合中的每一个元素}
能遍历什么 单列集合名或数组名
本质 底层就是迭代器
注意事项 不能再for遍历集合的时间,修改集合的长度
默认方法foreach(函数式接口)调用方法的时候,直接传递一个lamba即可,带一个参数,不带返回值,参数就是集合中的每一个元素
3.list 特点 有索引,有序元素可重复的集合
实现类 Arraylist 数组结构 特点:查询快,增删慢
应用场景:查询多,增删少
数据量小
linkedList 双向链表(拥有操作首尾的方法)特点 :增删块,查询蛮,操作首尾增删改查都快
应用场景,常操作首尾
常用方法 增(add)
删remove
改set
查get
长度size