看下面的例子
public void test( )
{
  try
  {
      //some code
  }
  catch(Exception ex)
  {  
      //some code
  }  Console.writeline("is ok");}
其实就就算发生了异常,try,catch后面的console.writeline( )也会执行,可是常常会把一段代码放在catch{ }后面的finally{}中,为什么还需要finally{}呢?直接把它放在catch{}后面不就可以了么?不理解..

解决方案 »

  1.   

    finally 一般用來在發生異常時釋放一些必須釋放的資源,比如,數據庫聯接等
      

  2.   

    public void test( )
    {
      try
      {
          //some code
          code1;code2;code3 如果code1发生错误,code2,code3将不会执行;而是执行catch
      }
      catch(Exception ex)
      {  
          //some code
          
      }  Console.writeline("is ok");}
    有finally是必须要做,比方说释放资源等,建议看.net异常机制(借鉴)
      

  3.   

    楼上几位说得对,finally主要就是用来释放一些必须释放的资源,比如说关闭文件流,关闭数据库连接等等...
      

  4.   

    finally,当发生错误时,你但你又不想让程序的某些功能停止运行.于是加上finally语句
      

  5.   

    大家误解我的意思啦,我是说:就算要关闭文件流,关闭数据库连接,把这段代码防放在catch{} 的后面就可以了么,为什么要刻意弄个finally把它写在里面?难道是仅仅是为了看起来明显一点?