日期:2014-05-18  浏览次数:20833 次

throw new exception什么时候用啊?
比如“:
  static void Main(string[] args)
  {
  fun(22);
  Console.Read();
  }
  static void fun(int n)
  {
  if (n != 1)
  {
  throw new Exception("不是1");
  }
  }
这样做有什么意义吗? 应该什么时候用throw new exception,大家帮我举个例子啊!!!!

------解决方案--------------------
通常情况下,一个函数的执行结果和执行的状态我们会通过函数返回值的方式向上层调用者返回,但是,如果碰到函数既要返回执行的结果,又要告诉调用者函数执行中碰到了什么问题,或者函数的参数没有达到被处理的条件时,通过返回值向调用者报告状态会很麻烦。
那么通过向调用者抛出异常(Exception)的方式,由调用者统一处理执行状态。
你可以从Exception类继承并且自定义异常类,比如说是业务类调用了数据类后,由于数据库为正常连接,那么数据类就可以向业务类扔出一个DBDisabledException(自己定义的异常类),那么业务类try-catch到这个异常后可以做一些相关的处理。