Java 为什么要 try catch?

一、描述

一个学在Java的室友问我,明明都知道错误为什么还要try catch 处理异常啊?以下文章是我对其的一点思考。

二、为什么要try catch?

  1. 明白Java 中的 try catch是什么?

首先,try catch是Java中处理 异常 的手段机制。关于Java如何具体来处理异常,后面来解释;我们先来明确目标和背景。既然是用来处理异常的,那么异常是什么?而这样做的好处又是什么呢?

异常指的是在程序运行过程中发生的异常事件,通常是由外部问题(如硬件错误、输入错误)
所导致的。在Java等面向对象的编程语言中异常属于对象。
OS中:异常属于内中断(发生在处理器内部)

异常产生的原因?
从输入的正确性角度考虑,我们都知道程序是一系列的指令序列,说白了也就是人们解决问题的一种逻辑,而作为人思考的逻辑不可能做到百分百的不出错(比如产生 死循环导致内存不够用,或者 计算出现 除数为0等情况)。另外,从物理实现机制角度出发,最终实现我们的想法(指令流)是CPU以及辅助存储的内存,而资源是有限的,不可能做到任其使用(这也是OS存在的价值),那么就会出现资源使用完,或者甚至一些掉电的硬件问题。
因此,我们必须知道 异常是无法规避的,只能做到去预防。

处理异常的好处
对于编码角度,可以保证编程语言的代码质量,提升健壮性。

Java中的异常-

在这里插入图片描述
java中,相关处理类。

在这里插入图片描述

简单实现:

在这里插入图片描述

  1. 防御式/契约式编程

例如controller类中进行用户请求的数据进行预防测试。

posted @ 2021-10-06 11:45  不善言谈者2018  阅读(255)  评论(0编辑  收藏  举报