wordpress全站静态,wordpress数据表,专业做网站优化,西安短视频培训Throwable: 总父类,表示不正常的情况 2. Error: 错误
无法解决也无法提前避免的问题通常由硬件设备或内存等问题导致
Exception:异常 可以解决或提前避免的问题通常由代码导致分类: RuntimeException:运行时异常#xff0c;也称为未检查异常、未检异常等 编译不报错,运行报错…Throwable: 总父类,表示不正常的情况 2. Error: 错误
无法解决也无法提前避免的问题通常由硬件设备或内存等问题导致
Exception:异常 可以解决或提前避免的问题通常由代码导致分类: RuntimeException:运行时异常也称为未检查异常、未检异常等 编译不报错,运行报错可以处理也可以不处理java.lang.ArrayIndexOutOfBoundsException:数组下标越界java.lang.StringIndexOutOfBoundsException:字符串下标越界异常java.lang.IndexOutOfBoundsException:下标越界异常java.lang.NullPointerException:空指针异常java.lang.ClassCastException:类型转换异常java.lang.NumberFormatException:数据类型转换异常java.lang.Arithm eticException:数学运算异常…都来自于java.lang包 非RuntimeException: 非运行时异常也称为已检查异常、已检异常等 编译就会报错必须处理只要不是运行时异常,就一定是非运行时异常
异常的产生 自动产生: 当运行到有问题的代码时会自动产生异常,程序终止 手动产生: throw 异常对象;位置:方法内部作用:当程序执行到该语句,则会抛出一个异常对象,使程序强制终止使用: 同一直属范围内,下方不可存在其他有效语句 无法执行 程序终止执行: 代码正常运行结束执行到异常执行到return; 异常的处理 上抛异常: 消极处理 访问修饰符 返回值类型 方法名(形参列表)throws 异常类名1,异常类型2,..{}作用: 将当前方法的内部异常向上抛至调用者,当前方法无法处理该异常. 此时异常并不会被根治,如果异常最终上抛至虚拟机,则仍然会导致程序终止使用 上抛父类异常也可以处理内部的子类异常调用者需要处理解决的异常类型由throws上抛的类型决定 throw和throws的区别 位置throw写在方法内部throws写在方法声明处作用throw是抛出制造异常throws是上抛解决异常 捕捉并解决异常积极处理 try{//有可能出现异常的代码
}catch(有可能匹配的异常类名 引用名){// 对应的处理方案
}特点可以根治异常问题如果异常正常匹配成功则程序会继续向下执行使用 当try中内容出现异常时会立即开始匹配catch块如果catch块匹配成功则程序继续执行如果失败则异常仍会出发程序仍然终止可以存在多个catch块自上而下的进行匹配一个try-catch结构至多执行一个catch块父类异常类型可以兼容匹配子类异常父类异常需要写在子类异常之下为了保证匹配一定成功通常会在catch最下方匹配一个Exception如果发生的是非运行时异常则catch块无法捕捉与其无关的非运行时异常编译报错 异常信息处理 String getMessage()获取异常的详细信息void printStackTrace()打印输出异常的追栈(追踪)信息异常类型异常的详细信息异常的触发位置 finally块 特点无论如何都会执行,通常用来关闭资源 语法 try{}catch(){}finally{}使用; 必须与try结合使用无法与catch单独结合当try-catch-finally中出现return语句冲突时优先执行finally