第七节——异常
Posted 想学习安全的小白
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第七节——异常相关的知识,希望对你有一定的参考价值。
异常学习
一、异常处理之try。。。catch
- 格式
try {
可能出现异常的代码;
}catch(异常类名 变量名){
异常处理的代码;
}
- 例子
int []arr = {1,2,3};
try {
System.out.println(arr[3]);
}catch (ArrayIndexOutOfBoundsException e){
e.printStackTrace();
System.out.println("数组索引出错");
}
二、异常处理常用函数
- 函数都来自Throwable的成员方法
- public string getMessage():返回错误信息
- public string toString():返回异常简短描述
- public void printStackTrace():把错误信息输出
三、异常处理之throws
- 概念将异常抛出给上一级函数处理,若没有上一级函数处理则交给jvm处理
- 格式:
//函数时定义时在函数名处使用throw
public static void methods()throws ArrayIndexOutOfBoundsException{
int[] arr={1,2,3};
System.out.println(arr[3]);
}
//调用函数时使用try。。。cath处理,若不进行处理则交给jvm
try {
methods();
}catch (ArrayIndexOutOfBoundsException e){
e.printStackTrace();
}
四、自定义异常
- 定义格式
public class 异常名 extends Exception{
无参构造
带参构造
}
- 使用格式
public class 函数名(){
方法名 throws 异常名{
throw new 异常对象; //throw用于在方法体内抛一个异常对象
}
}
- 例子:
//定义一个异常
public class MyException extends Exception{
public MyException() {
}
public MyException(String message) {
super(message);
}
}
//定义一个方法抛出自定义异常
public static void methods()throws MyException{
throw new MyException("xx原因出错");
}
//使用try。。。cathch调用方法,打印异常信息
try {
methods();
}catch (MyException e){
e.printStackTrace();
}
以上是关于第七节——异常的主要内容,如果未能解决你的问题,请参考以下文章