当前遇到过的异常

1、ClassCastException(类型转换异常)
数据类型转换错误。当抛出这个异常的时候,表示代码企图投射一个对象到一个并不是实例的子类。

public static void main(String[] args) {
	// 类型强制转换异常
	Object x = new String("String");
	System.out.println((Integer) x);
}

控制台输出的异常信息为:
Exception in thread "main" java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Integer at cn.com.gjw.MyClass.main(MyClass.java:7)

2、 IndexOutOfBoundsException(数组越界)
当访问某个序列的索引值小于0或大于等于序列大小时,抛出该异常。

public static void main(String[] args) {
	int arr[] = {1,2};
	// 此处报数组下标越界异常
	System.out.println(arr[2]);
}

控制台输出的异常信息为:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 2 at cn.com.gjw.MyClass.main(MyClass.java:7)

3、 NullPointerException(空指针)
调用了未经初始化的对象或者是不存在的对象,这个错误经常出现在调用数组这些操作中,对数组操作中出现空指针,很多情况下是一些刚开始学习编程的人常犯的错误,即把数组的初始化和数组元素的初始化混淆起来了。数组的初始化是对数组分配需要的空间,而初始化后的数组,其中的元素并没有实例化,依然是空的,所以还需要对每个元素都进行初始化(如果要调用的话)。

public static void main(String[] args) {
	String str = null;
	//此处报空指针异常
	System.out.println(str.length());
}

控制台输出的异常信息为:
Exception in thread "main" java.lang.NullPointerException at cn.com.gjw.MyClass.main(MyClass.java:7)
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值