从 JDK 对异常的分类看 RuntimeException 是程序员可以通过优化程序代码来避免的异常,比如数组越界、空指针等,程序员只要多加些判断语句,就可以完全避免这类异常的发生 而非 RuntimeException 异常,是再牛B的程序员无论如何优化程序都无法避免的,比如 SocketException 异常,远程主机当机/关机、或者通信电缆被剪断……,都会导致无法与远程主机建立套接字;再比如IOException,在读本地文件时遇到磁盘坏道,导致文件读取失败、路由器故障导致与远程主机的数据通信失败……;再比如…… 建议楼主在设计软件架构时,对自定义的异常也遵循这个原则。
[quote=引用 8 楼 stacksoverflow 的回复:] [quote=引用 7 楼 maradona1984 的回复:] [quote=引用 6 楼 stacksoverflow 的回复:] [quote=引用 3 楼 maradona1984 的回复:] 实践证明,不要抛出检查性异常
[quote=引用 7 楼 maradona1984 的回复:] [quote=引用 6 楼 stacksoverflow 的回复:] [quote=引用 3 楼 maradona1984 的回复:] 实践证明,不要抛出检查性异常
[quote=引用 6 楼 stacksoverflow 的回复:] [quote=引用 3 楼 maradona1984 的回复:] 实践证明,不要抛出检查性异常
[quote=引用 3 楼 maradona1984 的回复:] 实践证明,不要抛出检查性异常
实践证明,不要抛出检查性异常
62,614
社区成员
307,326
社区内容
加载中
试试用AI创作助手写篇文章吧