自定义异常的应用1

来源:互联网 发布:做淘宝客服的技巧 编辑:程序博客网 时间:2024/06/07 00:17
/*
 * 因为项目中会出现特有的问题.
 * 而这些问题并未被java所描述并封装对象
 * 所以对于这些特有的问题可以按照java的对问题封装的思想。
 * 将特有的问题,进行自定义的异常封装。
 * 自定义异常:
 * 需求:在本程序中,对于除数是-1,也视为错误的是无法进行运行的运算。
 * 那么就需要对这个问题进行自定义的描述。
 * 当在函数内部出现了throw抛出异常对象,那么就必须给对应的处理动作
 * 要么在内部try catch处理
 * 要么在函数上声明让调用者处理。
 * 一般情况在函数内出现异常,函数上需要声明。
 * 发现打印的结果只有一场名称,却没有异常信息,因为自定义的异常类并未定义信息。
 * 如何定义异常信息呢?
 * 自定义异常类:
 * 必须是自定义类继承Exception类。
 * 为什么要继承Exception?
 * 异常体系有一个特点,因为异常和异常对象都被抛出。
 * 她们都具备体现中的类和对象才可以被thows和thow操作。
 */
class FuShuException extends Exception
{

private String  msg;


public FuShuException(String msg)

 {

this.msg=msg;

}


public String getMessage()
{
return msg;

}


}


class Demo
{
int div(int a,int b) throws FuShuException//(声明异常)在功能上通过throws的关键字声明了该功能有可能会出现问题。
{
if(b<0)
throw new FuShuException("出现了除数是负数的情况");//抛出异常
return a/b;
}
}
public class ZiDingYiException {
public static void main(String args[]) 
{
Demo d=new Demo();

//用try catch处理异常。
try {
int x = d.div(4,-1);
System.out.println("x=---"+x);

catch (FuShuException e)

 {

// TODO 自动生成的 catch 块
e.printStackTrace();//打印异常信息
}

System.out.println("over");
}
}
0 0
原创粉丝点击