高手谈C#异常处理!
我想请问一下各位用C#变成多年的高手们,C#在情况应该处理异常,在什么情况下没有必须异常!我很困惑,想请高手指点一下! 问题点数:20、回复次数:4Top
1 楼wxy0401(abc)回复于 2006-02-11 14:43:39 得分 0
不管在什么情况下异常都是要处理的.只是确定处理异常的位置比较头晕.Top
2 楼sp1234(asp.net不是一个语言,是一个操作系统)回复于 2006-02-11 14:50:48 得分 20
在直接跟系统ui界面打交道的地方,需要捕获异常。例如系统仅仅对异常显示一个警告,然后就粗暴地关闭进程,这时候你就需要自己写异常处理,并且让进程继续处理下去。
在更深的层,不要捕获异常,或者仅仅对异常进行一个包装以便让异常类型更明确,例如 catch(ex Exception){throw new myExceptionABCParseError("ABC系统无法解析的命令。",ex);},将异常继续抛到上一层调用者去处理。
对于一些WindowsService程序,需要无人值守地执行,在ui层不是让客户去操作,而是将错误写入系统日志。
总之,大多数时候继续抛出异常,除非上级无法接住它。Top
3 楼IS_LL(鳳翼天翔)回复于 2006-02-11 14:56:29 得分 0
.net说白了就是就是事件编成,每个类的事件体开头和结尾都用try,catch包住,基本上异常都能捕捉住。单纯的方法就不用加了,因为方法最终都是用事件来调用的。Top
4 楼seeJessica(计院洲洲)回复于 2006-02-11 14:59:37 得分 0
sp1234 说的很精辟Top




