java异常处理之自定义异常类

/*自定义异常*/
class ChushulingException extends Exception
{
public ChushulingException(String msg)
{
super(msg);
}
}

class ChushufuException extends Exception
{
public ChushufuException(String msg)
{
super(msg);
}
}

/*自定义异常 End*/

class Numbertest
{
public int shang(int x,int y) throws ChushulingException,ChushufuException
{
if(y<0)
{
throw new ChushufuException("您输入的是"+y+",规定除数不能为负数!");//抛出异常
}
if(y==0)
{
throw new ChushulingException("您输入的是"+y+",除数不能为0!");
}

int m=x/y;
return m;
}
}





class Rt001
{
public static void main(String[]args)
{
Numbertest n=new Numbertest();

//捕获异常
try
{
System.out.println("商="+n.shang(1,-3));
}
catch(ChushulingException yc)
{
System.out.println(yc.getMessage());
yc.printStackTrace();
}
catch(ChushufuException yx)
{
System.out.println(yx.getMessage());
yx.printStackTrace();
}
catch(Exception y)
{
System.out.println(y.getMessage());
y.printStackTrace();
}

finally{ System.out.println("finally!");} finally不管发没发生异常都会被执行

}
}
/*





Java代码

try {
UserManager.login(xx,xx);

// 用户登陆以后的主事件流代码
login(“aa”,”123”)

} catch (UserNotFoundException e); {
// 用户名称没有的事件处理,例如产生一个提示用户注册的页面
JOptionPane.showConfirmDialog(null, "用户名错误");

} catch (PasswordNotMatchException e); {
// 密码不对的事件处理,例如forward到重新登陆的页面
JOptionPane.showConfirmDialog(null, 密码错误");
}


1.自定义异常:


class 异常类名 extends Exception //或者 extends Throwable
{
public 异常类名(String msg)
{
super(msg);
}
}


2.标识可能抛出的异常:

throws 异常类名1,异常类名2

3.捕获异常:
try{}
catch(异常类名 y){}
catch(异常类名 y){}

4.方法解释
getMessage() //输出异常的信息
printStackTrace() //输出导致异常更为详细的信息
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值