java异常
2022/1/24 22:05:01
本文主要是介绍java异常,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
1.throw 和throws 的区别
throw 表示方法中抛出某种异常,如果异常对象是非runtimeException,则需要在方法上申明加上该异常的抛出,即需要加上throws语句或者在try catch 处理该异常,否则编译报错。
throws 方法的定义使用 throws 表示这个 方法可能抛出某种异常
需要由方法的调用者进行异常处理
2.final、finally、finalize 有什么区别?
final
final修饰类,表示该类不可以被继承
final修饰变量,表示该变量不可以被修改,只允许赋值一次
final修饰方法,表示该方法不可以被重写
finally
finally是java保证代码一定要被执行的一种机制。
比如try-finally或try-catch-finally,用来关闭JDBC连接资源,用来解锁等等
finalize
finalize是Object的一个方法,它的目的是保证对象在被垃圾收集前完成特定资源的回收。
不过finalize已经不推荐使用,JDK9已经标记为过时。
3.异常
error 和exception
error 不可控制的,经常来自于表示系统错误或者底层资源错误,如果可能,应该在系统级被捕捉
Exception
1.可以是可被控制(checked) 或不可控制的(unchecked)。
2.表示一个由程序员导致的错误。
3.应该在应用程序级被处理。
java 定义了两种异常: checkedException uncheckedException 运行时异常和非运行时异常
runtimeException
java.lang.NullPointerException 空指针异常;出现原因:调用了未经初始化的对象或者是不存在的对象。
● java.lang.ClassNotFoundException 指定的类找不到;出现原因:类的名称和路径加载错误;通常都是程序试图通过字符串来加载某个类时可能引发异常。
● java.lang.NumberFormatException 字符串转换为数字异常;出现原因:字符型数据中包含非数字型字符。
● java.lang.IndexOutOfBoundsException 数组角标越界异常,常见于操作数组对象时发生。
● java.lang.IllegalArgumentException 方法传递参数错误。
● java.lang.ClassCastException 数据类型转换异常。
● java.lang.NoClassDefFoundException 未找到类定义错误。
● SQLException SQL 异常,常见于操作数据库时的 SQL 语句错误。
● java.lang.InstantiationException 实例化异常。
● java.lang.NoSuchMethodException 方法不存在异常。
这篇关于java异常的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-15鸿蒙生态设备数量超8亿台
- 2024-05-13TiDB + ES:转转业财系统亿级数据存储优化实践
- 2024-05-09“2024鸿蒙零基础快速实战-仿抖音App开发(ArkTS版)”实战课程已上线
- 2024-05-09聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用
- 2024-05-09log4j2这么配就对了
- 2024-05-09nginx修改Content-Type
- 2024-05-09Redis多数据源,看这篇就够了
- 2024-05-09Google Chrome驱动程序 124.0.6367.62(正式版本)去哪下载?
- 2024-05-09有没有大佬知道这种数据应该怎么抓取呀?
- 2024-05-09这种运行结果里的10.100000001,怎么能最快改成10.1?