class Demo {
public static void main(String[] args) {
show(50);
}
public static void show(int age) throws Exception {
if (age < 50) {
throw new Exception("太嫩了");
}
System.out.println(age);
}
}
当你在编辑时想让调用者知道他传达的值是错的你就抛一个编辑时异常,让他预先做处理,你不处理你编辑就不能通过。在抛异常的方法中写一个声明 throws Exception
上面其实是处理异常的一种方案,声明异常。还有一种方案就是捕获异常
class Demo {
public static void main(String[] args) {
try{ show(10);
}
catch(Exception e){
System.out.println("异常被抓住了");
}
}
public static void show(int age) throws Exception {
if (age < 50) {
throw new Exception("太嫩了");
}
System.out.println(age);
}
}
通过try,catch来进行异常的内部消化。
总结:
什么时候使用捕获,什么时候使用声明:
首先明确自己到底是功能的定义者还是功能的调用者。
如果我们是功能的定义者,在我们的功能中有异常发生,而这个异常不需要告诉给调用者,这时就要在自己的功能中必须把这个捕获调用。
如果这个问题需要告诉调用者,这时就可以在方法上使用throws关键字把异常声明出去。
功能的调用者:我们调用别人的程序,由于别人的程序发生了问题,自己在调用的时候,就需要提前给出处理方案,而Java对异常的处理方案仅有2种,
捕获和声明。如果这个问题在我们自己的程序能够处理掉就不要再使用声明,而发自己依然要把这个问题往外暴漏,那么就可以使用声明