有关JAVA异常类的问题,求解答


public class Check {
   public static void main(String args[]) {
      Machine machine = new Machine();
      String name[] ={"苹果","炸药","西服","硫酸","手表","硫磺"};
      Goods [] goods = new Goods[name.length]; //检查6件物品  
      for(int i= 0;i<name.length;i++) {
         goods[i] = new Goods();
         if(i%2==0) {
            goods[i].setIsDanger(false);
            goods[i].setName(name[i]);
         }
         else {
            goods[i].setIsDanger(true);
            goods[i].setName(name[i]);
         } 
      }
      for(int i=0;i<name.length;i++) {  //循环检查完goods[]数组中的全部物品
        try { 
            machine.checkBag(goods[i]);    //machine调用checkBag()方法检查
            System.out.println(goods[i].getName()+"检查通过");
        }
        catch(DangerException e) {
            e.toShow();  //e调用toShow()方法
            System.out.println(goods[i].getName()+"被禁止!"); 
        }
      }     
   } 
}

(1)是否可以将try…catch语句中catch捕获的异常更改为Exception?
(2)是否可以将try…catch语句中catch捕获的异常更改为java.io.IOException?

第一个问题:---可以,因为Exception是Exception分支中最大的了;
第二个问题:IoException 貌似不行,你这个代码没有涉及到IO操作;

另一个Catch 的exception 时还是有一些规则需要注意的;
欢迎采纳!!