浏览 1570 次
锁定老帖子 主题:新手~~关于异常的使用问题
该帖已经被评为新手帖
|
|
---|---|
作者 | 正文 |
发表时间:2007-10-23
public static GateWayCaller getGateWayCaller(String serviceKey) { if("alerting".equals(serviceKey)) { return new AlertingCaller(); } else if("report".equals(serviceKey)) { return new ReportCaller(); } //... else { return null; } } 一同事硬说我return null不对,应该抛出一个checked异常,由客户端调用者去处理该异常。 我的想法很简单,既然这是一个生成对象的方法,如果调用者将参数传错导致要生成的对象不存在,就应该返回一个空对象,而不是抛出异常。不然的话所有客户端代码都要处理一个没用的异常!! 搞的好郁闷,最受不了的是老说我什么什么观点是错误的。俺也没有什么太多的编程经验,也不知道该怎么去反驳。我认为没有哪个观点是绝对错误的,只有比较之下哪种做法更好一点?听听大家的意见? 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2007-10-23
抛出异常是对的。
客户端调用者在最外层可以统一处理。 null更可怕,客户端调用者更要处处判断。 |
|
返回顶楼 | |