黑马程序员技术交流社区
标题:
很火的面试题,求解
[打印本页]
作者:
337091921
时间:
2013-5-17 00:36
标题:
很火的面试题,求解
当参数不合法的时候,究竟是if else 判断后返回一个值还是直接来个Exception ?
如果是 if else 的话,有什么好处 ?
如果是 exception 的话,又有什么好处 ?
或者是根据不同情况来定?
作者:
萌小子
时间:
2013-5-17 00:56
应该根据情况来定吧,就看程序需不需要抛出异常让上层处理了。如果需要那就用Exception,如果不需要就用if-else吧。我想是这样的!呵呵
作者:
刘正祥
时间:
2013-5-17 01:10
个人觉得 if else更人性化一点,如果直接来个Exception的话显得机器化,
但是if else 有主观判断的含义,并不一定能达到纠正程序的结果,
而程序追求的就是精确,所以Exception还是更好一点!
作者:
Miss小强
时间:
2013-5-17 18:06
一般都是抛一个运行时异常IllegalArgumentException;
对方即可以选择不处理,当发生异常时,对方又知道;
作者:
曹睿翔
时间:
2013-5-19 07:53
如果问题已解决请再次编辑,改为以解决,方便大家看帖,没有就继续追问
作者:
张林敏
时间:
2013-5-31 10:56
如果这个错误考虑后期可能需要进行处理的话就用try
作者:
张超
时间:
2013-5-31 11:51
张林敏 发表于 2013-5-31 10:56
如果这个错误考虑后期可能需要进行处理的话就用try
没次看到你的头像都想笑,为了论坛的和谐,哥们求你换个图像把。
作者:
郭天龚
时间:
2013-5-31 19:05
其实这个问题每个人都有自己的答案。且每个人的答案都不相同。我个人的理解是这样的。
1 .if-else 方式的好处在于更贴近与逻辑思维,性能优于Exception。相对于Exception,其缺点是,不适合OOP,语义不明显,
不易于错误跟踪或错误提示较少,并且类型比较单一(比如利用C语言的原生类型)或者难以统一(比如C语言结构和宏定义)。
2. Exception方法的好处在于是业务实现代码和异常处理逻辑分离(代码相对清晰),try放业务实现代码,catch中处理异常情况。
在API设计中,可以设计Exception Handler来处理异常,使得层次分明。同时,更好的OOP的封装和多态性。缺点在于性能相对差。
要想详细了解你还是参考《疯狂java讲义》悟出自己的感想来。
作者:
liuelxiwd
时间:
2013-5-31 19:33
我不是归人,是个过客,哈哈~~来做个广告
http://bbs.itheima.com/thread-52835-1-1.html
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2