您的位置:首页 > 编程语言 > Java开发

Java高级语法笔记-普通异常处理

2018-01-08 23:39 316 查看
地位:

1. Java彻底地、完全地支持了异常机制。

2. 无处不在、必须掌握。

正常情况:传入一个数组,长度为N,则getMax能够正常运作得到最大值。

异常情况:传入一个数组,长度为0。。。如何处理?传统方法:使用if判断 。

异常处理机制

Java里的异常处理分为两个环节:

1. 底层函数抛出异常对象 throw

… getMax () throws Exception

{

Exception e = new Exception("…描述…");

throw e;

}

2. 上层调用时,监视代码、捕捉异常对象 try … catch …

try{

}catch(Exception e){

}

异常处理机制

try{}: 正常处理流程;

catch{}: 异常处理流程 (错误已发生,该怎么办?);

如果一切正常,则运行完try{}中的代码后,忽略catch{},继续运行后面的代码。

如果getMax()有异常发生时,则立即try{}中退出、并跳转到相应的catch{}中运行。

throw

throw语句用于抛出一个异常对象,该对象必须是Throwable的子类。

通常,我们使用Exception类,或者创建一个Exception的子类。

该类用于描述错误的具体信息。

throw语句的双重作用:

Exception e = new Exception("… 描述…");

throw e;

(1)抛出一个异常对象

(2)退出当前函数

代码如下:

package my;

public class HelloWorld
{
public int getMax(int[] numbers) throws Exception{
if(numbers.length==0) {
Exception e=new Exception("长度不能为0");
throw e;
}
int max=numbers[0];
for(int i=1;i<numbers.length;i++) {
if(numbers[i]>max) {
max=numbers[i];
}
}
return max;
}

public static void main(String[] args)
{
HelloWorld t=new HelloWorld();
int[] date= new int[0];
try {
int max=t.getMax(date);
System.out.println("成功:result:"+max);

}
catch(Exception e) {
System.out.println("出错:"+e.getMessage());
}
}

}


运行截图如下:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Java