System.Exception
      System.SystemException
         System.InvalidCastException前者是后者的祖先类。

解决方案 »

  1.   

    这时两者的树状结构
    System.Object
       System.Exception
          System.SystemException
             System.InvalidCastException
    System.Exception:针对的范围要广一些,
    System.InvalidCastException:仅针对类型转换,msdn的说明原文如下:
    The exception that is thrown for invalid casting or explicit conversion.
      

  2.   

    前一个是捕捉所有异常
    后一个只捕捉InvalidCastException的异常,其余的异常就掠过了