黑马程序员技术交流社区
标题:
学习异常遇到的一点问题
[打印本页]
作者:
青春灬漫步
时间:
2014-10-19 16:03
标题:
学习异常遇到的一点问题
如果父类方法抛出多个异常,那么子类在覆盖时,怎么抛?
作者:
nerveva2000
时间:
2014-10-19 18:06
对多异常的处理
1,声明异常时,建议声明更为具体的异常,这样处理的可以更具体。
2,对方声明几个异常,就对应有几个catch块。不要定义多余的catch块
如过多个catch块中的异常出现继承关系,父类异常catch块放在最下面。
建立在进行catch处理时,catch中一定要定义具体处理方式。
不要简单定义一句 e.printStackTrace(),
也不要简单的就书写一条输出语句。
class Demo
{
int div (int a,int b) throws ArithmeticException,ArrayIndexOutOfBoundsException //在功能上通过throws 的关键字,声明类该功能有可能会出现问题。
{
int[] arr = new int[a];
System.out.println(arr[4]);
return a/b;
}
}
class Test
{
public static void main(String[] args)
{
Demo d = new Demo();
try
{
int x = d.div(4,1);
System.out.println("x="+x);
}
catch(ArithmeticException e)
{
System.out.println(e.toString()); //异常名称:异常信息
System.out.println("除零了");
}
catch(ArrayIndexOutOfBoundsException e)
{
System.out.println(e.toString()); //异常名称:异常信息
System.out.println("脚标越界了");
}
System.out.println("over");
}
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2