【安利Java零基础】java基础语法—20道常见异常库(一)

简介: 【安利Java零基础】java基础语法—20道常见异常库

前言


在编程中异常报错是不可避免的。特别是在学习某个语言初期,看到异常报错就抓耳挠腮,常常开玩笑说编程1分钟,改bug1小时。


异常指程序运行过程中出现的非正常现象,例如用户输入错误、除数为零、需要处理的文件不存在、数组下标越界等。异常机制本质就是当程序出现错误,程序安全退出的机制。在Java的异常处理机制中,引进了很多用来描述和处理异常的类,称为异常类。异常类定义中包含了该类异常的信息和对异常进行处理的方法。


Java是采用面向对象的方式来处理异常的,处理过程:


抛出异常:在执行一个方法时,如果发生异常,则这个方法生成代表该异常的一个对象,停止当前执行路径,并把异常对象提交给JRE。

捕获异常:JRE得到该异常后,寻找相应的代码来处理该异常。JRE在方法的调用栈中查找,从生成异常的方法开始回溯,直到找到相应的异常处理代码为止。

让我们来看看前面所讲到的异常类究竟是个什么东西!


其实所有的异常对象都是派生于Throwable类的一个实例。如果内置的异常类不能够满足需要,还可以创建自己的异常类。所有异常的根类为java.lang.Throwable。看看它的家族长什么样:


94c838016e514890bc151de9ee4c53ad.png


❤❤️💚❤️💙💚❤❤️💙💚❤️❤💙💚❤️💙❤💚❤️💙💚❤❤️💙💚❤️❤💙❤️💙💚❤


🐋1. 改变main方法名称


⚡⚡描述

若没有main方法,强制执行程序,控制台会报错:


5826b3ea65ab42e99a85171e8cfca3ee.png


⚡⚡解决方法

必须有一个方法叫做main

public class Demo01 {
    public static void main(String[] args) {
        //main方法
    }
}

2. 总是执行老代码


⚡⚡描述

每次执行,即使将代码更新,执行效果仍然是之前的老代码

⚡⚡解决方法

解决方案:手动删除out目录

4808b62c5336420d8a6068d8a9f36834.png

3. 执行括号报错

⚡⚡描述

db6c57244c9247e3b13f2c7d87153807.png

⚡⚡解决方法

检查括号成对出现


0e62aba5743a49d3a1802666ca2cbd71.png


🐋4. 书写休眠代码


⚡⚡描述

8434600d1f7f4d2fb8ac93dd43a50e44.png


⚡⚡解决方法

在红线处,按下Alt+回车,选择第一个,会自动补全代码


beeb148da9f04814998d8e80e0cb61f8.png


f3198d3439424abfb4a3a69d2f670cda.png


🐋5. 项目内容消失了


⚡⚡描述

567811430d384fe5b2383b9d56acf6cb.png

删除了.iml文件导致


⚡⚡解决方法

重新创建项目


🐋6. 变量运算报错


⚡⚡描述

e31daf10e4be4befbfa4ec66e1868838.png

⚡⚡解决方法

变量先赋值,后使用


🐋7. 变量超出保存范围


⚡⚡描述

e0df6771bf684a7aaa9126a16d81c51f.png


⚡⚡解决方法

缩小数字,或更换更大的数据类型,例如:long


🐋8. 使用关键字作为包名


⚡⚡描述

包名中使用了关键字java。运行报异常


2c87c396edb4478ca838b031439a65bc.png


⚡⚡解决方法

包名不能加关键字,重新更换包名


🐋9. 引入错误的String类型


⚡⚡描述

2ca9239f85dc4b5890deb90ff2fb05f3.png


⚡⚡解决方法

删除标红的引用语句,重新选择java.lang的String类型


5185c1c033e54d41bbbb6cb1e8beabff.png


使用注意:引用的String   (java.lang)


1fae2c6093dc4f5e8bbce1c04a9d05e2.png


🐋10. 除0异常


⚡⚡描述

若数字除0,会出现除0异常


9128f85a75aa45ef910c72a21643e7eb.png


⚡⚡解决方法

数字不能进行除0,重新书写除数


相关文章
|
5天前
|
Java
在 Java 中捕获和处理自定义异常的代码示例
本文提供了一个 Java 代码示例,展示了如何捕获和处理自定义异常。通过创建自定义异常类并使用 try-catch 语句,可以更灵活地处理程序中的错误情况。
|
5天前
|
Java
在 Java 中,如何自定义`NumberFormatException`异常
在Java中,自定义`NumberFormatException`异常可以通过继承`IllegalArgumentException`类并重写其构造方法来实现。自定义异常类可以添加额外的错误信息或行为,以便更精确地处理特定的数字格式转换错误。
|
6天前
|
IDE 前端开发 Java
怎样避免 Java 中的 NoSuchFieldError 异常
在Java中避免NoSuchFieldError异常的关键在于确保类路径下没有不同版本的类文件冲突,避免反射时使用不存在的字段,以及确保所有依赖库版本兼容。编译和运行时使用的类版本应保持一致。
|
7天前
|
Java 编译器
如何避免在 Java 中出现 NoSuchElementException 异常
在Java中,`NoSuchElementException`通常发生在使用迭代器、枚举或流等遍历集合时,尝试访问不存在的元素。为了避免该异常,可以在访问前检查是否有下一个元素(如使用`hasNext()`方法),或者使用`Optional`类处理可能为空的情况。正确管理集合边界和条件判断是关键。
|
10天前
|
Java
Java异常捕捉处理和错误处理
Java异常捕捉处理和错误处理
12 1
|
11天前
|
Java 大数据 API
14天Java基础学习——第1天:Java入门和环境搭建
本文介绍了Java的基础知识,包括Java的简介、历史和应用领域。详细讲解了如何安装JDK并配置环境变量,以及如何使用IntelliJ IDEA创建和运行Java项目。通过示例代码“HelloWorld.java”,展示了从编写到运行的全过程。适合初学者快速入门Java编程。
|
12天前
|
Java 编译器 开发者
Java异常处理的最佳实践,涵盖理解异常类体系、选择合适的异常类型、提供详细异常信息、合理使用try-catch和finally语句、使用try-with-resources、记录异常信息等方面
本文探讨了Java异常处理的最佳实践,涵盖理解异常类体系、选择合适的异常类型、提供详细异常信息、合理使用try-catch和finally语句、使用try-with-resources、记录异常信息等方面,帮助开发者提高代码质量和程序的健壮性。
28 2
|
15天前
|
Java API Apache
|
19天前
|
Java
如何在 Java 中处理“Broken Pipe”异常
在Java中处理“Broken Pipe”异常,通常发生在网络通信中,如Socket编程时。该异常表示写入操作的另一端已关闭连接。解决方法包括:检查网络连接、设置超时、使用try-catch捕获异常并进行重试或关闭资源。
|
21天前
|
存储 安全 Java
如何避免 Java 中的“ArrayStoreException”异常
在Java中,ArrayStoreException异常通常发生在尝试将不兼容的对象存储到泛型数组中时。为了避免这种异常,确保在操作数组时遵循以下几点:1. 使用泛型确保类型安全;2. 避免生类型(raw types)的使用;3. 在添加元素前进行类型检查。通过这些方法,可以有效防止 ArrayStoreException 的发生。