java编程思想这本书上的一道练习题,题目是:定义三种新的异常类型,写一个类,在一个方法中抛出三种异常,在main中调用这个方法,仅用一个catch捕获三个异常
------解决方案--------------------------------------------------------
这样就可以了:
- Java code
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;}
------解决方案--------------------------------------------------------