当前位置:编程学习 > C#/ASP.NET >>

try finally

try
{
A...
}
finally
{
B...
}

这个结构应该无论A里有没有异常,都执行B吧.但是现在A异常了.都抛出异常信息,让选择是退出还是继续. --------------------编程问答-------------------- 你的问题是什么? --------------------编程问答-------------------- 那个...没看懂你要问什么 汗一下 --------------------编程问答-------------------- 不要做throw --------------------编程问答--------------------  
catch 
            {
                if (MessageBox.Show("Quit", "error", MessageBoxButtons.YesNo) == DialogResult.Yes)
                    this.Close();
                else
                    return;
            }
--------------------编程问答-------------------- go on
finally里面的东西是肯定要执行的 --------------------编程问答-------------------- try{A}
finally{B}
A异常了会throw信息,如何把这个事件取消.

是不是只有
try{A}
catch{}
finally{B}


另一个问题:
try{A}
catch{}
finally{B}

try{A}
catch{}
B
相同吗? --------------------编程问答-------------------- 不一样.
try{A} 
catch{} 
finally{B} 
只有出现异常才执行.

后一个出不出现都执行.
--------------------编程问答-------------------- 你理解.net中的异常处理吗?你这样也没说抛出异常信息。 --------------------编程问答-------------------- 不大对吧
try{A}  
catch{}  
finally{B}  
B是怎么样都执行吧 --------------------编程问答-------------------- try{A}   
catch{}   
finally{B} 
finally里面的东西是肯定要执行的,不管是否出现异常 --------------------编程问答-------------------- 顶楼上,不过得有异常处理. --------------------编程问答-------------------- try{A}    
catch{throw new ArgumentException("Empty record");}    
finally{B}
如果出现异常, catch throw了一些东西出來,
finally里面的B是肯定要执行的 --------------------编程问答-------------------- catch用于捕获异常信息,也就是只有出现异常时才执行,而FINALLY是不管有没有异常都会执行 --------------------编程问答-------------------- 不一样. 
try{A}  
catch{}  
finally{B}  
只有出现异常才执行. 

后一个出不出现都执行. 


如果不是必须你最后一项可以省去吧,若是加上肯定是要执行的! --------------------编程问答--------------------
引用 13 楼 iamwei20071126 的回复:
catch用于捕获异常信息,也就是只有出现异常时才执行,而FINALLY是不管有没有异常都会执行



补充:.NET技术 ,  C#
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,