class FuShuException extends Exception
{
private String msg;
FuShuException(String msg)
{
this.msg = msg;
}
public String getMessage()
{
return msg;
}
}
class Demo
{
int div(int a,int b) throws FuShuException
{
if (b<0)
throw new FuShuException("出现了除数为负数了 / by fushu");//这行语句开始不明白了。我知道这行语句是手动的抛出异常的一个类的对象,但是为什么里面还可以带一个参数?
//这个参数传出去后又是谁来接收呢?
//请教这个对象里面的参数是怎么一步一步传递的????
return a/b;
}
}
class ExceptionDemo3
{
public static void main(String[] args)
{
Demo d = new Demo();
try
{
int x = d.div(4,-1);
System.out.println("x="+x);
}
catch (FuShuException e)//这里捕捉抛出的异常。
{
System.out.println(e.toString());//这个通过toString()自动调用异常类里面的getMessage()方法。
System.out.println("除数出现负数了");
}
System.out.println("over");
}
}
//throw new FuShuException("出现了除数为负数了 / by fushu");
//这一句是不是先创建FuShuException的对象然后再调用FuShuException(String msg)这个构造方法呀?
|