- package com.Painter.Try;
- public class TryDemo2
- {
- public static void main(String[] args)
- {
- ExceptionDemo3 exception = new ExceptionDemo3();
- try
- {
- int sum = exception.num(5, 0);
- System.out.println(sum);
- }
- catch (FushuException e)
- {
- new FushuException().call1();
- }
- catch (ArithmeticException e)
- {
- new FushuException().call2();
- }
- System.out.print("over");
- }
- }
- class FushuException extends Exception
- {
- public void call1()
- {
- System.out.println("除数不能为负数");
- }
- public void call2()
- {
- System.out.println("除数不能为0");
- }
- }
- class ExceptionDemo3
- {
- public int num(int a,int b) throws FushuException
- {
- if(b<0)
- {
- throw new FushuException();//手动通过throw关键字抛出一个自定义异常对象
- }
- int sum=0;
- return sum=a/b;
- }
- }
复制代码当在函数内部出现了throw抛出异常对象,那么就必须要给对应的处理动作。 要么在内部 try catch 处理 要么在函数上声明让调用者处理。 一般情况下 ,函数内出现异常,函数上需要声明
|