终于有人把Java异常处理方法给总结出来了,吃透这篇足够

推荐学习:

这可能是全网Java学习路线最完整,最详细的版本了,没有之一

终于有人把Java异常处理方法给总结出来了,吃透这篇足够_第1张图片

 

文章目录

  • 一、前言
  • 二、异常概述及异常体系结构
    • 1.概述
    • 2.异常体系结构
  • 三、异常处理方式(两种)
    • 1.方式一:try-catch-finally
    • 2.方式二:throws
  • 四、如何选择处理异常方式
  • 五、手动抛出异常(throw)
  • 六、自定义异常类
  • 七、异常处理总结

一、前言

这篇文章是我之前学过的基础总结,希望对大家有所帮助!

二、异常概述及异常体系结构

1.概述

我们在做程序开发时候,都想着把代码写的完美无瑕(不大可能),但是真实情况是在系统运行代码时,仍然会遇到一些问题,不能靠代码避免,比如:

  • 客户输入的数据格式
  • 读取文件是否存在
  • 网络是否始终保持通畅

我们把这类问题,归结为异常!

异常概念:在Java语言中,将程序执行中发生的不正常情况称为异常(异常指的并不是语法错误,语法错了,编译不通过,不会产生字节码文件,根本不能运行)

Java中异常分为两类

  1. Error:java虚拟机无法解决的严重问题(JVM系统内部错误、资源耗尽),一般没办法编写针对性代码进行处理(处理不了
public class ErrorTest {
    public static void main(String[] args) {
        //1.栈溢出java.lang.StackOverflowError
        main(args);
        
        //2.堆溢出:java.lang.OutOfMemoryError
        Integer[] arr = new Integer[1024 * 1024 * 1024];
    }
}
123456789
  1. Exception:因编程错误或偶尔的外在因素导致的一般性问题,可以使用针对性的代码进行处理(空指针访问,试图读取不存在的文件,网络连接中断,数组角标越界等)

注意:我们平常将Error和Exception都称作广义上的异常,但是由于我们不处理Error,所以我们平时在开发中提到的异常一般指的是Exception,我们说的异常处理指的就是狭义上的异常:Exception,所以此博客主要讲解的异常处理针对的是Exception

2.异常体系结构

捕获错误最理想的是编译期间,但有的错误只在运行期间发生&#x

你可能感兴趣的:(后端,java,编程语言,java,编程语言,exception,jvm,python)