想象一下,我有一个主类来处理另一种类型的 HashMap ,我希望使用serializable接口将其存储在文件中。
我们可以将主要类别称为经理,我想要保存在文件中的类可以称为数据。
现在,经理类有一种方法可将数据类的实例保存到文件中(存储数据的所有实例)在经理类中的 HashMap 中。实例的名称是我的用户输入的,因此可能不存在。
在这种情况下我该怎么办?检查实例是否存在,如果不存在,则返回false或生成返回void的函数,如果实例不存在则抛出异常?我应该在这种情况下使用例外吗?异常是否会对程序的性能产生重大影响(因为每次抛出一个程序我们都必须创建一个新对象......)
感谢。
答案 0 :(得分:1)
Exceptions
。
if
。
Exceptions
比if
更贵,因为当引发异常时,它会创建堆栈跟踪以便返回。
因此,如果您可以采取任何措施来避免错误,请使用if
。如果您不能,请使用exception
答案 1 :(得分:1)
当案例破坏了程序的进一步逻辑时,你需要抛出异常。
如果实例存在对于将来的操作非常重要且重要,那么您最好抛出异常。否则,该方法可以返回boolean
,没有任何例外。
异常会对程序的性能产生重大影响吗?
不,他们不会。无论如何,你不应该为此感到焦虑 There are a good question and answers.