Java 为什么要 try catch?
一、描述
一个学在Java的室友问我,明明都知道错误为什么还要try catch 处理异常啊?以下文章是我对其的一点思考。
二、为什么要try catch?
- 明白Java 中的 try catch是什么?
首先,try catch是Java中处理 异常
的手段机制。关于Java如何具体来处理异常,后面来解释;我们先来明确目标和背景。既然是用来处理异常的,那么异常是什么?而这样做的好处又是什么呢?
异常指的是在程序运行过程中发生的异常事件,通常是由外部问题(如硬件错误、输入错误)
所导致的。在Java等面向对象的编程语言中异常属于对象。
OS中:异常属于内中断(发生在处理器内部)
异常产生的原因?
从输入的正确性角度考虑,我们都知道程序是一系列的指令序列,说白了也就是人们解决问题的一种逻辑,而作为人思考的逻辑不可能做到百分百的不出错(比如产生 死循环导致内存不够用,或者 计算出现 除数为0等情况)。另外,从物理实现机制角度出发,最终实现我们的想法(指令流)是CPU以及辅助存储的内存,而资源是有限的,不可能做到任其使用(这也是OS存在的价值),那么就会出现资源使用完,或者甚至一些掉电的硬件问题。
因此,我们必须知道 异常是无法规避的,只能做到去预防。
处理异常的好处
对于编码角度,可以保证编程语言的代码质量,提升健壮性。
Java中的异常-
java中,相关处理类。
简单实现:
- 防御式/契约式编程
例如controller类中进行用户请求的数据进行预防测试。