博客
关于我
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/

你可能感兴趣的文章
mysql 前缀索引 命令_11 | Mysql怎么给字符串字段加索引?
查看>>
MySQL 加锁处理分析
查看>>
mysql 协议的退出命令包及解析
查看>>
mysql 参数 innodb_flush_log_at_trx_commit
查看>>
mysql 取表中分组之后最新一条数据 分组最新数据 分组取最新数据 分组数据 获取每个分类的最新数据
查看>>
MySQL 命令和内置函数
查看>>
mysql 四种存储引擎
查看>>
MySQL 在并发场景下的问题及解决思路
查看>>
MySQL 基础架构
查看>>
MySQL 基础模块的面试题总结
查看>>
MySQL 备份 Xtrabackup
查看>>
mYSQL 外键约束
查看>>
mysql 多个表关联查询查询时间长的问题
查看>>
mySQL 多个表求多个count
查看>>
mysql 多字段删除重复数据,保留最小id数据
查看>>
MySQL 多表联合查询:UNION 和 JOIN 分析
查看>>
MySQL 大数据量快速插入方法和语句优化
查看>>
mysql 如何给SQL添加索引
查看>>
mysql 字段区分大小写
查看>>
mysql 字段合并问题(group_concat)
查看>>