下面代码定义了一个异常解决除法的问题,如果除数出现0或负数就报错
注意,自定义异常的代码第一次运行时一定要写在应用的前面,否则会出现错误
无法加载主类
java.lang.NoClassDefFoundError
下面程序复制即可到java上运行
/*
*自定义的异常类,格式如下,通过super关键字,将错误信息传递给Exception的构造函数中,之后再调用
*toString()方法就可以打出自己想写的异常信息了
*/
class MyException extends Exception
{
MyException(String ErrorMessage)
{
super(ErrorMessage);
}
}
/*
* 自定义异常:java自己的异常可以手动抛出也可以自动抛出,而自己定义的异常java虚拟机不认识
* 所以,我们要通过throw关键字自己抛出异常,抛出异常之后我们有两种处理方式,第一种是抛出
* 第二种是在下面直接try catch进行处理
*/
public class Myyichang
{
public static void main(String[] args)
{
try
{
int c=chu(2,-1);
System.out.println(c);
}
catch(MyException e)
{
System.out.println(e.toString());
}
}
static int chu(int a,int b)throws MyException
{
if(b<=0)
{
throw new MyException("出现负数或者零了");
}
return a/b;
}
}