异常为程序在运行时出现的不正常现象;
java中的异常都是运行时异常;
Throwable类是所有java异常类的直接(间接)父类;
一.异常语句的结构:
try{
需要被检测的代码;
}catch(异常类 变量名){
异常处理代码;
}finally{
无论发不发生异常都会被执行的代码;
}
1.try语句块中的正常语句,在产生异常后不会被执行;
2.若有多个catch语句块,子类异常一定要写在父类异常的前面,所以,无论有几个catch语句块,都只执行一个catch语句;
3.异常处理的出口为finally语句;
二.消极的处理方式
也可以使用throws关键字直接抛出异常:
public 返回值 方法名(参数形式) throws Exception{
方法体;
}
三.自定义异常类:
自定义异常类继承exception类,并创建带参的构造方法,在try语句快中用throw来抛出异常;
自定义异常类:
class MyException extends Exception {
MyException(final string massage){
super(massage);
}
}
实例:输入double类型的数,若小于零则抛出异常:
public class fun{
public static void main(String args[]){
Scanner sc = new scanner();
doublie d=sc.nextDouble();
try{
if(d<0.0){
throw new MyException("输入错误!");
}else{
System.out.println("你输入的数为:"+d);
}
}catch(Exception e){
e.printStackTrace();
}
}
}
class MyException extends Exception {
MyException(final string massage){
super(massage);
}
}
希望对初学者有所帮助!