为了账号安全,请及时绑定邮箱和手机立即绑定

java 中如何处理设计一个方法

java 中如何处理设计一个方法

慕田峪4524236 2019-03-30 11:31:22
java中我们很常见的设计API的例子是对一个对象进行增,删,查,改.比如ObjectaddObject(Objectobj);ObjectdelObject(Objectobj);ObjectmodifyObject(Objectobj);成功返回obj,不成功(参数不合法,或已经存在,或不存在)抛出异常还是intaddObject(Objectobj);intdelObject(Objectobj);intmodifyObject(Objectobj);如果成功返回0,不成功,返回其他数字还是booleanaddObject(Objectobj);booleandelObject(Objectobj);booleanmodifyObject(Objectobj);如果成功返回0,不成功(参数不合法,或已经存在,或不存在),抛出异常感谢各位热心回答,我已经决定采用第一种方式了.原因:1.性能不是那么的关键;2绝大多数我们认为参数是正确的.排除异常较返回Errorcode让代码更加简洁.补充:以下是从这里找到的一个回答,基本决定采用第一中方式,这或许是java语言本身的特点,如果是c或cpp我更倾向于第二种方式.Exceptionsimposequiteanoverheadontheruntimeperformance,butmakesreasoningabouttheprogramflowdrasticallyeasier.Thisreducesfaultyprogramming(semanticerrors),especiallyasitforcesyoutodealwiththem-they'failsecurely'byterminatingtheprogramiftheyareignored.Theyareidealfor'situationswhicharenotsupposedtohappen'.Alsotheycantransportmetadatalikeastacktrace.Errorcodes,ontheotherhand,arelight-weight,fast,butforcesthemethodcallertoexplicitelycheckthem.Failuretodosooftenresultsinprogramflaws,whichcanrangefromsilentdatacorruption,securityholes,tonicefireworksifyourprogramhappenstoberunninginsideaspacerocket.
查看完整描述

2 回答

?
慕森王

TA贡献1777条经验 获得超3个赞

ObjectaddObject(Objectobj);
ObjectdelObject(Objectobj);
ObjectmodifyObject(Objectobj);
像这种方式比较适合做串式操作。方法返回后还可以利用返回对象做一些数据处理。其他两种完全就是标志本次操作是否成功,
返回int类型可以表示的错误类型会多一点,也就是说提示错误粒度更加细。
boolean类型就两种,要么成功要么失败,提示错误粒度略粗。
还是要看你具体业务了
                            
查看完整回答
反对 回复 2019-03-30
?
凤凰求蛊

TA贡献1825条经验 获得超4个赞

使用哪种不重要,重要的是选择了一种就要作为惯例遵守(书上读到的)
                            
查看完整回答
反对 回复 2019-03-30
  • 2 回答
  • 0 关注
  • 499 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号