1.编译时异常 / 被检查异常(Exception的子类中除了"运行时异常"之外的其它子类都属于被检查异常)
2.运行时异常
1.异常捕捉:try…catch…finally
2.异常抛出:throws
常见异常: checked异常包括:1.文件已结束异常:EOFException
输入流未读取到任何数据,因文件为空的时候会出此异常
2.文件未找到异常:FileNotFoundException:
要操作某个电脑上的文件时出现,要确定路径对不对,是否有该文件名 。
3.类未找到异常:ClassNotFoundException类加载调用失败后出现的,检查调用的类,或者检查引用的API有没有被错误使用。
4.方法未找到异常:NoSuchMethodException1、检查action层是否存在该方法
2、检查该方法是否为 public
3、检查此方法是否传了参数 action的方法有参数
Runtime异常 包括:1.算术异常类:ArithmeticExecption
当数字运算时出现的异常,比如除法运算的时候出现除0的情况。
2.类型强制转换异常:ClassCastException
当强制将本来不是Integer类型的字符串转成Integer类型时。或者多态的时候向下强制转型时和创建多态对象不一致的时候。
3.IllegalArgument Exception
不合法的参数异常,传递了错误的参数。
4.IllegalState Exception
response是服务端对客户端请求的一个响应,其中封装了响应头、状态码、内容等, 服务端在把response提交到客户端之前,会向缓冲区内写入响应头和状态码,然后将所有内容flush。这就标志着该次响应已经committed(提交)。对于当前页面中已经committed(提交)的response,就不能再使用这个response向缓冲区写任何东西(注:同一个页面中的response.XXX()是同一个response的不同方法,只要其中一个已经导致了committed,那么其它类似方式的调用都会导致 IllegalStateException异常)
5.数组下标越界异常:ArrayIndexOutOfBoundsException
操作数组时,操作的数值不符合数组规定的下标。
6.空指针异常类:NullPointerException
操作了一个为null的数据或者空串的时候会出现的异常,检查定义的值。
7.SQLExceptionSQL语句错误,或者连接数据库不正常时,查看SQL语句,检查配置文件。
二、基本类型和包装类1. 基本类型在内存中是直接储存的值。包装类储存的是引用的地址值。
2. 基本类型并不具有对象的性质,为了让基本类型也具有对象的特征,拥有方法和字段,就出现了包装类型。
3. 当需要往ArrayList,HashMap中放东西时,像int,double这种基本类型是放不进去的,因为容器都是装object的,这是就需要这些基本类型的包装器类了。
4. 逻辑上来讲,java只有包装类就够了,但为了运行速度,需要用到基本数据类型。对于变成语言来说都会优先考虑运行效率的问题,所以二者同时存在是合乎情理的。



