三层架构
/*
异常的处理方式2:抛出处理. (throw / throws)
抛出处理注意的细节:
1.如果一个方法内部抛出了一个编译时异常对象,那麽必须在方法上声明抛出
2.如果调用了一个声明抛出编译时异常类型的方法,那么调用者必须要进行处理,否则编译报错
3.一个方法遇到了throw关键字,那麽该方法会马上停止执行。
4.在一种情况下只能抛出一种异常对象。
throw 与 throws的区别:
1.throw关键字是用于在一个方法的内部抛出异常对象,throws是用于在方法上抛出异常类型的。
2.(throw关键字后面跟的是一个异常对象,throws后面跟的是异常类型)
3.throw关键字一次只能抛出一个异常对象,throws一次可以声明抛出多种异常类型。
什么时候使用抛出处理,什么时候使用捕获处理?
如果需要通知调用者出了异常,那么则需要使用抛出处理。
如果与用户直接打交道的代码就使用捕获处理,千万不能抛出,一旦抛出就抛给了用户。
*/
class Demo
{
public static void main(String[] args)
{
//System.out.println("Hello World!");
try{
div(4,0,null);
}catch(Exception e){
System.out.println("。。。。。。");
}
}
public static void div(int a , int b , int[] arr) throws Exception,NullPointerException{
if(b==0){
throw new Exception();//抛出一个异常
}else if (arr==null){
throw new NullPointerException();
}
int c = a/b;
System.out.println("结果是:"+c);
}
}