黑马程序员技术交流社区
标题:
问题
[打印本页]
作者:
菇凉斋
时间:
2016-4-8 00:17
标题:
问题
多个catch的应用场景,和try catch嵌套的应用场景?求解惑!!!!
作者:
dwt1397261
时间:
2016-4-8 00:36
一楼
作者:
minge123
时间:
2016-4-8 00:39
上课不好好听
作者:
安先森
时间:
2016-4-8 00:40
Try-Catch机制使用场景
(一)在什么场景下加Try-Catch机制
1)以业务逻辑功能为单位,在最上层加Try-Catch机制。为什么要这样做呢?这主要是增加程序的健壮性,防止因抛出异常过多,导致程序崩溃。
try
{
//业务逻辑功能
//......
}
catch (Exception ex)
{
//记录日志
//......
}
2)底层代码,在可能出错的地方加Try-Catch机制,用Catch侦测具体的异常,然后就具体的异常,采取相应的解决方案。
try
{
sent += sendSAEA.AcceptSocket.Send(buffer, sent, size - sent, SocketFlags.None);
}
catch (ObjectDisposedException ex) //Socket 已关闭
{
break;
}
catch (SocketException ex)
{
//socket异常,等待后继续尝试发送
Thread.Sleep(this.socketListenerSettings.MSDelayForNextSend);
}
catch (Exception ex)
{
this.SaveLog("Send方法出错,错误描述为:" + ex.Message.ToString());
break;
}
3)底层代码,在需异常追踪时加Try-Catch机制,在Catch块中抛出自定义异常,调试时可迅速定位到错误代码段。
try
{
//底层代码
//......
}
catch (Exception ex)
{
throw new Exception("xxx方法出错,描述:" + ex.Message.ToString());
}
作者:
菇凉斋
时间:
2016-4-8 01:26
谢谢大神们解惑..非常感谢!!!!
作者:
F305176
时间:
2016-4-9 22:17
加油~~~~
作者:
clvslyf
时间:
2016-4-9 23:46
来学习
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2