本帖最后由 杨增坤 于 2013-9-8 07:20 编辑
- /*自定义的异常*/
- class MyDivFuShuException extends Exception {
- public MyDivFuShuException(String message) {
- super(message);
- }
- }
- public class ZidingyiException {
- public static void main(String[] args) {
- try {
- div(1, -1);
- } catch (MyDivFuShuException e) {// 这里捕获的是方法中抛出的异常
- System.out.println(e.getMessage());
- }
- try {
- div1(1, -1);
- } catch (MyDivFuShuException e) {// 这里捕获自定一的异常,但是方法中没有抛出才异常,不是即使不会出现的异常的,也可以在这里进行捕获呢啊,那为什么还会出错呢
- System.out.println(e.getMessage());
- } catch (ArithmeticException e) {// 这里编译不会出错误,这是现有的异常类,捕获不出错误,但是为什么自定义的异常就会出错误呢
- System.out.println(e.getMessage());
- }
- }
- /* 自定义的异常 把异常抛出 */
- public static void div(int a, int b) throws MyDivFuShuException {
- if (b < 0)
- throw new MyDivFuShuException("自定义的异常,除数不能为零");
- System.out.println(a / b);
- }
- /* 自定义的异常 在本方法中就把异常抛出 */
- public static void div1(int a, int b) {
- try {
- if (b < 0)
- throw new MyDivFuShuException("自定义的异常,除数不能为零");
- System.out.println(a / b);
- } catch (MyDivFuShuException e) {
- System.out.println(e.getMessage());
- }
- }
- }
复制代码 请大家帮忙解答一下我的疑问!
|
|