java中的异常抛出
左下角表示可以处理的异常(通过try-catch处理),右下角表示不能处理的异常,将抛出给上一级
当我们定义一个方法时,如果正确调用,可以返回一个结果;如果错误的调用,则应该抛出一个异常,这时,可以使用throws来抛出某种异常的类型。
public double getCircleArea(double r) throws Exception{
}
throws:
1.用来表明一个方法可能产生的所有异常
2.用在方法声明后面,跟的是异常类名,可以跟多个异常类名,用逗号隔开
3.表示抛出异常,由该方法的调用者来处理
4.throws表示出现异常的一种可能性,并不一定会发生这些异常
throw:
1.用来抛出一个具体的异常对象
2.用在方法体内,后面放置的是异常对象名,说明要手动抛出一个异常
3.执行throw时表示一定抛出了某种异常对象
自定义异常:
class 自定义异常类 extends 异常类型{}
上面的异常类型可以是Exception,也可以是其意思相近的子类
例:
public class DrunkException extends Exception{
public DrunkExcepiton(){
}
public DrunkExcepiton(String message){
super(message);
}
}
throws-声明将要抛出何种类型的异常(声明)
public void 方法名(参数列表)
throws 异常列表{
//调用会抛出异常的方法或者:
throw new Exception();
}
1.throws的异常列表可以是抛出一条异常,也可以是抛出多条异常,每个类型的异常中间用逗号隔开
2.方法体中调用会抛出异常的方法或者是先抛出一个异常:用throw new Exception()
throw写在方法体里,表示“抛出异常”这个动作
3.如果某个方法调用了抛出异常的方法,那么必须添加try catch语句去尝试捕获这种异常,
或者添加声明,将异常抛出给更上一层的调用者进行处理
4.自定义异常:
class 自定义异常类 extends 异常类型{}
上面的异常类型可以是Exception,也可以是其意思相近的子类
例:
public class DrunkException extends Exception{
public DrunkExcepiton(){
}
public DrunkExcepiton(String message){
super(message);
}
}
throw异常类型
抛出异常
自定义异常
java中的异常抛出
异常抛出以及自定义异常
throws throw主动抛出异常,交给更上层捕获异常
异常抛出+自定义异常
throw——将产生的异常抛出(动作)
throws——声明将要抛出何种类型的异常(声明)
public void 方法名(参数列表)
throws 异常列表{
//调用会抛出异常的方法或者:
throws new Exception();
}
自定义异常:
class 自定义异常类 extends 异常类型{
}
自定义异常
自定义异常要继承于 Exception 类或者其子类
throw一将产生的异常抛出 (动作) throws -声明将要抛出何种类型的异常 (声明) public void方法名(参数列表) throws异常列表{ //调用会抛出异常的方法或者: throw new Exception(); }
自定义异常
java中异常的抛出
自定义异常
class 自定义异常类 extends 异常类型{
}
//异常类型可以用Exception
异常抛出
throw——将产生的异常抛出(动作)
throws——声明将要抛出何种类型的异常(声明)
public void 方法名(参数列表)
throws 异常列表{
//调用会抛出异常的方法或者:
throw new Exception();
}
实现自定义异常,如图
自定义异常
class 自定义异常类 extends 异常类型{ }
注意:自定义异常需要继承于意思相近的异常,或者直接继承于所有异常的基类Exception类。
标准类库中的异常种类,如图
图中红框为:当调用者不能处理时,将该异常继续声明抛出,给更上一层的调用者区处理。
Java中的异常抛出
throw——将产生的异常抛出(动作)
throws——声明将要抛出何种类型的异常(声明)
public void 方法名(参数列表) { throws 异常列表{ //调用会抛出异常的方法或者: throw new Exception(); } }
super出现在继承了父类的子bai类中。有三种存在du方式:
第一种
super.xxx;(xxx为变量名或对象名)
这种方法zhi意义为,获取父类中的名字为xxx的变量或方法引用。
使用这种方法可以直接访问父类中的变量或对象,进行修改赋值等操作
第二种
super.xxx();(xxx为方法名)
这种方法意义为,直接访问并调用父类中的方法。
第三种
super();
这种方法意义为,调用父类的初始化方法,其实就是调用父类中的public xxx()方法
需要写如下代码 public MyMap(){ super(); } 这样,你自己写的类 MyMap map = new MyMap();才能使用 这样做的好处是,你可以不知道原来父类的初始化构造函数是怎么写的。 但是却可以轻易封装它。
自定义异常 要么 继承自Java类库中意思相近的异常 要么继承自Java类库中所有异常的基类---->Exception类
在方法() 后添加throws Exception是将异常抛出给更上一层的调用者去处理.
异常类型。
java中的异常抛出:
throw----将产生的异常抛出(动作)
throws---声明将要抛出何种类型的异常(声明)