当RuntimeException异常运行时,程序直接停止了,表示代码需要修正,可是异常是用来处理客户可能出现的问题,程序是停止了,可是代码修正,客户还是无法解决呀,难道说对于RuntimeException我们都不进行处理。这样反馈给用户的信息,用户依然看不懂呀。可是要处理就必须还得执行后边的程序。
/*
求长方形和圆的面积,对于出现的非法数据,当做异常处理。
*/
interface GetArea
{
public void getArea();
}
class Rec implements GetArea
{
double len,wid;
Rec(double len, double wid) throws NoValueException
{
if(len<=0 || wid<=0)
{
throw new NoValueException("出错了");
}
this.len=len;
this.wid=wid;
}
public void getArea()
{
System.out.println(len*wid);
}
}
class NoValueException extends RuntimeException
{
NoValueException(String msg)
{
super(msg);
}
}
class ExceptionTest
{
public static void main(String[] args)
{
/*try{
} catch (NoValueException n)
{
}*/
Rec r=new Rec(2,-3);
r.getArea();
System.out.println("over");
}
} |