博客
关于我
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 触发器
查看>>
mysql 让所有IP访问数据库
查看>>
mysql 记录的增删改查
查看>>
MySQL 设置数据库的隔离级别
查看>>
MySQL 证明为什么用limit时,offset很大会影响性能
查看>>
Mysql 语句操作索引SQL语句
查看>>
MySQL 误操作后数据恢复(update,delete忘加where条件)
查看>>
MySQL 调优/优化的 101 个建议!
查看>>
mysql 转义字符用法_MySql 转义字符的使用说明
查看>>
mysql 输入密码秒退
查看>>
mysql 递归查找父节点_MySQL递归查询树状表的子节点、父节点具体实现
查看>>
mysql 通过查看mysql 配置参数、状态来优化你的mysql
查看>>
mysql 里对root及普通用户赋权及更改密码的一些命令
查看>>
Mysql 重置自增列的开始序号
查看>>
mysql 锁机制 mvcc_Mysql性能优化-事务、锁和MVCC
查看>>
MySQL 错误
查看>>
mysql 随机数 rand使用
查看>>
MySQL 面试题汇总
查看>>
MySQL 面试,必须掌握的 8 大核心点
查看>>
MySQL 高可用性之keepalived+mysql双主
查看>>