zoukankan      html  css  js  c++  java
  • 抛出多个异常 water

    java编程思想这本书上的一道练习题,题目是:定义三种新的异常类型,写一个类,在一个方法中抛出三种异常,在main中调用这个方法,仅用一个catch捕获三个异常

    public class CatchMultiException {
     
        public static void main(String[] args) throws Exception {
            try {
                test(2);
            catch (Exception e) {
                if (e instanceof TestAException || e instanceof TestBException
                        || e instanceof TestCException) {
                    e.printStackTrace();
                else {
                    throw e;
                }
            }
        }
     
        public static void test(int a) throws TestAException, TestBException,
                TestCException {
            if (a == 0) {
                throw new TestAException();
            }
            if (a == 1) {
                throw new TestBException();
            }
            if (a == 2) {
                throw new TestCException();
            }
        }
    }
     
    class TestAException extends Exception {
        private static final long serialVersionUID = 1L;
    }
     
    class TestBException extends Exception {
        private static final long serialVersionUID = 1L;
    }
     
    class TestCException extends Exception {
        private static final long serialVersionUID = 1L;
    }
     
     
     
    --------------
    如果使用 JDK 7 的话,还可以这样:
        public static void main(String[] args) {
            try {
                test(2);
            catch (TestAException | TestBException | TestCException e) {
                e.printStackTrace();
            }
        }

    转自:

    http://bbs.csdn.net/topics/370216093

  • 相关阅读:
    qt 计时器自动刷新图片
    qt读取文本
    QLable 显示图片
    QButtonGroup 的使用
    Qt乱码的问题
    wpf 依赖强制回调
    实现Button的动态响应
    C# 闭包对像
    2020新年目标
    捕获、冒泡与阻止事件传播
  • 原文地址:https://www.cnblogs.com/autumnlj/p/5689835.html
Copyright © 2011-2022 走看看