博客
关于我
Java中常见异常举例
阅读量:754 次
发布时间:2019-03-23

本文共 2078 字,大约阅读时间需要 6 分钟。

Java中常见异常举例

Java作为一个强大的编程语言,拥有大量的异常类型。了解这些异常及其常见原因,对于代码调试和优化至关重要。本文将详细介绍几种常见的Java异常类型及其示例。

1. 常见异常类型

在Java中,异常可以分为几大类,每类异常都有自己独特的原因和处理方式。以下是一些常见异常类型:

  • ClassCastException

    描述:当尝试将一个对象赋值为另一个不相关的类时,会抛出此异常。
    举例:将一个Date对象赋值给一个String变量会导致该异常。

  • ArrayIndexOutOfBoundsException

    描述:当尝试访问数组中的一个不存在的索引时,会抛出此异常。
    举例:访问一个长度为3的数组的第4个元素。

  • NullPointerException

    描述:当引用一个尚未初始化的对象时,或者尝试用null进行操作时,会抛出此异常。
    举例:调用一个方法的返回值未赋值时直接使用。

  • ArithmeticException

    描述:在执行算术操作时出现错误,例如除以零或进行负数除法时会抛出此异常。
    举例:尝试用零作为除数进行除法运算。

  • NumberFormatException

    描述:将一个不能被解析为指定类型的字符串转换为数值时会抛出此异常。
    举例:将"abc"转换为整数。

  • InputMismatchException

    描述:在读取输入时,用户输入的数据类型与预期不符时会抛出此异常。
    举例:读取一个字符串期望是一个整数,但用户输入了小数。

  • IOException

    描述:涉及输入输出操作时发生错误时会抛出此异常。
    举例:尝试读取从文件中不存在的数据时会抛出此异常。

  • ClassNotFoundException

    描述:当尝试加载一个类文件时,找不到指定的类时会抛出此异常。
    举例:调用一个类的Class.forName方法,但该类不存在。

  • SQLException

    描述:涉及数据库操作时出现错误时,比如SQL语句错误或连接问题时,会抛出此异常。

2. 常见异常代码举例

让我们通过一些具体的代码示例来了解这些异常的表现形式。

ArrayIndexOutOfBoundsException
public class IndexOutExp {    public static void main(String[] args) {        String friends[] = {            "lisa", "bily", "kessy"        };        for (int i = 0; i < 5; i++) {            System.out.println(friends[i]);        }        System.out.println("\n这个是末尾");    }}

上述代码中,friends 数组的长度为3,但是循环条件是 i < 5,导致 i=3 时访问 friends[4],从而抛出数组越界异常。

NullPointerException
public class NullRef {    int i = 1;    public static void main(String[] args) {        NullRef t = new NullRef();        t = null;        System.out.println(t.i);    }}

在这个例子中,t 被赋值为 null,然后尝试访问 t.i,这会导致 NullPointerException

ArithmeticException
public class DivideZero {    int x;    public static void main(String[] args) {        DivideZero c = new DivideZero();        int y = 3 / c.x;        System.out.println("程序运行正常");    }}

此处,c.x 未初始化,导致在执行除法时抛出 ArithmeticException

ClassCastException
public class Order {    public static void main(String[] args) {        Object obj = new Date();        Order order;        order = (Order) obj;        System.out.println(order);    }}

Object 类型的 obj 强制赋值为 Order 类会抛出 ClassCastException

以上是一些常见的Java异常类型及其示例。理解这些异常有助于我们在编写代码时避免潜在的错误,并在遇到异常时能够快速诊断并解决问题。

转载地址:http://pdtzk.baihongyu.com/

你可能感兴趣的文章
mysqldump数据库备份无法进行操作只能查询 --single-transaction
查看>>
mysqldump的一些用法
查看>>
mysqli
查看>>
MySQLIntegrityConstraintViolationException异常处理
查看>>
mysqlreport分析工具详解
查看>>
MySQLSyntaxErrorException: Unknown error 1146和SQLSyntaxErrorException: Unknown error 1146
查看>>
Mysql_Postgresql中_geometry数据操作_st_astext_GeomFromEWKT函数_在java中转换geometry的16进制数据---PostgreSQL工作笔记007
查看>>
mysql_real_connect 参数注意
查看>>
mysql_secure_installation初始化数据库报Access denied
查看>>
MySQL_西安11月销售昨日未上架的产品_20161212
查看>>
Mysql——深入浅出InnoDB底层原理
查看>>
MySQL“被动”性能优化汇总
查看>>
MySQL、HBase 和 Elasticsearch:特点与区别详解
查看>>
MySQL、Redis高频面试题汇总
查看>>
MYSQL、SQL Server、Oracle数据库排序空值null问题及其解决办法
查看>>
mysql一个字段为空时使用另一个字段排序
查看>>
MySQL一个表A中多个字段关联了表B的ID,如何关联查询?
查看>>
MYSQL一直显示正在启动
查看>>
MySQL一站到底!华为首发MySQL进阶宝典,基础+优化+源码+架构+实战五飞
查看>>
MySQL万字总结!超详细!
查看>>