你的问题中提供的列表作为快速参考资料不是很有用,而且开发文档中的大多数描述对我来说似乎都很神秘。
我还没有遇到任何最可重用的内置异常的简短列表。我已经尽了最大努力在下面创建一个,但我相信它远非完美。
github gist 链接(或查看下面的当前内容)
潜在可重用的内置异常列表
按估计效用组织
非法争议异常
抛出以指示方法已通过非法或不适当的参数。
IndexOutOfBoundsException
抛出以指示某种类型的索引(如数组、字符串或向量)超出范围。
算术异常
当请求的数学运算无意义或不可能时抛出。例:int x = 1/0
;
非法状态异常
应用程序未处于适合所请求操作的状态。示例:尝试在加载或创建文件之前保存。
DataFormatException
当您收到格式不正确的数据时,请抛出此消息。例:MyClass.applyJSONString("{non:sense,all,garbled=definitely.not;json{{{")
超时异常
如果某件事花了太长时间而你放弃了,那就扔掉这个。
键选择器异常
如果您尝试使用密钥查找对象,并且未找到该对象,或者该密钥在其他方面无效,我认为抛出它是有道理的,但我并不真正理解有关它的开发文档。
示例:当 不在数据结构中时。myDataStructure.get("lookup_key");
lookup_key
IOException
阅读/写作有问题?引发此异常。
ScriptException
运行某种形式的脚本并发现它存在问题(不是I / O或解析)?引发此异常。
通用安全异常
如果遇到与安全相关的问题,请抛出此命令。
运行时异常
将其用于某些不适合任何其他类别的运行时错误。