【学习版】常见异常和异常记录

连不上数据库
在这里插入图片描述

常见的异常:

java.lang.StringIndexOutOfBoundsException: String index out of range: -1
这是截取字符串substring()产生的下标越界异常。原因是可能是字符串为空,或长度不足1

java.lang.NullPointerException空指针异常
出现该异常的原因在于某个引用为null,但却调用了它的某个方法,这时就会出现该异常
常见null.某方法 map可以get null,其他情况get null一般报空指针异常

ClassCastException
类型强制转换异常,例如:Object x = new Integer(0);System.out.println((String)x);

IllegalArgumentExceptio
传递非法参数异常,此异常表明向方法传递了一个不合法或不正确的参数。你看看传值的方法是否参数不正确

NumberFormatException
数字格式异常,例如:把"176//240"这个输入字条转换为一个数字

运行时异常

RuntimeException类是Exception类的子类,它叫做运行时异常,Java中的所有运行时异常都会直接或者间接地继承自RuntimeException类。
  Java中凡是继承自Exception,而不继承自RuntimeException类的异常都是非运行时异常

Error

1、java.lang.StackOverflowError
栈溢出
Java虚拟机虚拟机无法解决的问题,如JVM系统内部的错误,资源耗尽等严重的情况
2、java.lang.OUtOfMemoryError 堆溢出

Exception

在这里插入图片描述

编译异常
在这里插入图片描述

1、NullPointerException 空指针异常,比如数组值定义为null,但是非要把它给输出来,明显取不到值。(不是数组的时候也会出现空指针异常),一般出现空指针异常的时候,定位到改代码块,检查某些值是否赋值为null的时候合理。

2、ArrayIndexOutOfBoundsException 数组越界异常,数组一旦定义下来了之后长度就确定了,比如定义的长度为23,你想取得值为25,就会报数组越界的异常,解决方案也较为简单。

3、ClassCastException 类型冲突,类强制转换异常

public class Exception {
public static void main(String[] args) {

	Object obj = new Date();
	int a = (int)obj;
	System.out.println(a);
}

}

4、NumberFormatException 数字格式异常

	String s = "78879";
	double result = Double.parseDouble(s);
	System.out.println(result);
	s = "zhognhua";
	result = Double.parseDouble(s);//Exception in thread "main" java.lang.NumberFormatException: For input string: "zhognhua"
	System.out.println(result);

5、InputMismatchException
输入不匹配异常 该异常强调在输入的时候不匹配,结合上面的异常加上输入时编译器识别不出导致的异常

	Scanner number = new Scanner(System.in);
	int num = number.nextInt();
	System.out.println(num);

6、ArithmeticException
算术异常 比如我们数学中的0不能做除数

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

学习微站公众平台

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值