• 抛出多个异常 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

  • 相关阅读:
    前端文档
    vue手写骨架屏插件
    vue3 todolist
    微信公众号(小程序)利用客服接口主动给用户发送消息的方法
    使用docker-compose管理docker容器
    docker常用操作
    Declarative Pipeline语法介绍
    k8s集群dns问题解决办法
    K8S集群安装(四)使用helm安装应用
    k8s常用yaml-nginx、busybox
  • 原文地址:https://www.cnblogs.com/autumnlj/p/5689835.html
Copyright © 2020-2023  润新知