【安利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,重新书写除数


相关文章
|
10天前
|
Java 开发工具 Android开发
Kotlin语法笔记(26) -Kotlin 与 Java 共存(1)
本系列教程笔记详细讲解了Kotlin语法,适合需要深入了解Kotlin的开发者。若需快速学习Kotlin,建议查看“简洁”系列教程。本期重点介绍了Kotlin与Java的共存方式,包括属性、单例对象、默认参数方法、包方法、扩展方法以及内部类和成员的互操作性。通过这些内容,帮助你在项目中更好地结合使用这两种语言。
24 1
|
11天前
|
Java 开发工具 Android开发
Kotlin语法笔记(26) -Kotlin 与 Java 共存(1)
Kotlin语法笔记(26) -Kotlin 与 Java 共存(1)
24 2
|
5天前
|
Java
如何在 Java 中处理“Broken Pipe”异常
在Java中处理“Broken Pipe”异常,通常发生在网络通信中,如Socket编程时。该异常表示写入操作的另一端已关闭连接。解决方法包括:检查网络连接、设置超时、使用try-catch捕获异常并进行重试或关闭资源。
|
7天前
|
存储 安全 Java
如何避免 Java 中的“ArrayStoreException”异常
在Java中,ArrayStoreException异常通常发生在尝试将不兼容的对象存储到泛型数组中时。为了避免这种异常,确保在操作数组时遵循以下几点:1. 使用泛型确保类型安全;2. 避免生类型(raw types)的使用;3. 在添加元素前进行类型检查。通过这些方法,可以有效防止 ArrayStoreException 的发生。
|
8天前
|
人工智能 Oracle Java
解决 Java 打印日志吞异常堆栈的问题
前几天有同学找我查一个空指针问题,Java 打印日志时,异常堆栈信息被吞了,导致定位不到出问题的地方。
22 2
|
10天前
|
Java 编译器 Android开发
Kotlin语法笔记(28) -Kotlin 与 Java 混编
本系列教程详细讲解了Kotlin语法,适合需要深入了解Kotlin的开发者。对于希望快速学习Kotlin的用户,推荐查看“简洁”系列教程。本文档重点介绍了Kotlin与Java混编的技巧,包括代码转换、类调用、ProGuard问题、Android library开发建议以及在Kotlin和Java之间互相调用的方法。
13 1
|
10天前
|
安全 Java 编译器
Kotlin语法笔记(27) -Kotlin 与 Java 共存(二)
本教程详细讲解Kotlin语法,适合希望深入了解Kotlin的开发者。若需快速入门,建议查阅“简洁”系列教程。本文重点探讨Kotlin与Java共存的高级话题,包括属性访问、空安全、泛型处理、同步机制及SAM转换等,助你在项目中逐步引入Kotlin。
13 1
|
11天前
|
Java 编译器 Android开发
Kotlin语法笔记(28) -Kotlin 与 Java 混编
Kotlin语法笔记(28) -Kotlin 与 Java 混编
16 2
|
12天前
|
Java 索引
如何避免在 Java 中引发`StringIndexOutOfBoundsException`异常
在Java中,处理字符串时若访问了不存在的索引,会抛出`StringIndexOutOfBoundsException`异常。为避免此异常,应确保索引值在有效范围内,例如使用`length()`方法检查字符串长度,并确保索引值不小于0且不大于字符串长度减1。
|
11天前
|
安全 Java 编译器
Kotlin语法笔记(27) -Kotlin 与 Java 共存(二)
Kotlin语法笔记(27) -Kotlin 与 Java 共存(二)
23 0