没有特别的优势,就像一个注释一样。这意味着函数不会抛出异常,仅此而已。如果你有一个函数,但你自己写,它是由你的同事或其他人写的。函数的作者在函数后面加了一个throw(),就是告诉大家“这个函数不抛出异常,catch是没有必要的”
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名申请、虚拟空间、营销软件、网站建设、隆尧网站维护、网站推广。C中抛出异常好的好处是什么?我有10年的开发和培训经验,其间我经历了JavaWeb、Android、H5、大数据、PHP等多个不同的发展方向,同时也做软件培训公司的黄金讲师,很有兴趣回答你的问题。
您已经清楚地解释了这个问题中的要求,“一个查询方法应该返回一条记录,但是可以找到多条记录”!也就是说,您的查询应该只有一个结果,但此时或某个时候,会有多个结果,这意味着您的业务接口可能不满足幂等性的要求。根据幂等设计原理,无论怎样查找,只要参数相同,返回的结果应该是相同的。
那么如何解决这个问题并抛出异常呢?返回到几个中的第一个?
我认为这不是一个完美的解决方案。
这对某些人来说是一个解决方案,但是问题解决了吗?一点也不!问题仍然存在。下次触发此条件时,仍将引发异常。就像说森林里有一只老虎。有一天,它吃人,然后你不解决老虎的问题。你只是在森林里挂了一块牌子,上面写着:小心,里面有老虎!这…
事实上,这不是一个好办法。也许只有一件东西应该被退回。为什么要查询多个项目?您是否检查了数据库中数据的唯一性?你不觉得每次查询多个结果然后得到第一个数据效率很低吗?
所以我们应该从根本上解决问题!为什么会产生多个数据?如果要手动检查数据,则需要手动检查。如果要锁定它,应该尽大努力确保输入参数相同,结果相同
做程序时,如果某个查询方法应当返回一条记录,但是查出来多条,是抛异常好还是从多条中取第一条好?使用trycatchblock打包将产生异常的程序块。当异常发生时,它将根据需要输入catch并显示异常信息
例如:
try
{DBUtil.ExecuteSql文件(sql,paras)
}
catch(异常e)
{控制台。写入(e)//e是异常信息对象
}