java异常

常见异常:

ClassCastException 类型转换异常
ClassNotFoundException 未找到相应类异常
ArithmeticExceptuion 算术异常
ArrayIndexOutOfBoundsException 数组小标越界
ArrayStoreException 数组中包括含不兼容的值抛出异常
SQLException 操作数据库异常类
NullPointerException 空指针异常
NoSuchFieldException 字段未找到异常
NoSuchMethodException 方法未找到抛出的异常
NumberFormatException 字符串转换成数字抛出的异常
NegativeArraySizeException 数组元素个数为负数抛出的异常
StringIndexOutOfBoundsException 字符串索引超出范围抛出的异常
IOException 输入输出异常
IllegalAccessException 不允许访问某类异常
InstantiationException 当应用程序试图使用Class类中的newInstance()方法创建的一个类的实例,而指定的类对象无法被实例化时,抛出该异常
EOFException 文件已结束异常
FileNotFoundException 文件未找到异常

捕捉异常
java语言的异常捕获结构由try、catch和finally3部分构成,try语句块存放的是可能发生异常的java语句;catch程序块在try语句块之后,用来激发被捕获的异常;finally语句块是异常处理结构的最后执行部分,无论try块中的代码如何退出,都将执行finally块.
语法:

try{
    //程序代码块
}
catch(Exception1 e){
    //对Exception1的处理
}
catch(Exception2 e){
    //对Exception2的处理
}
......
finally{
    //程序块
}

1.try-catch语句块

public class Take{
    public static void main(String []args){
        try{//try语句块中包含可能出现异常的程序代码
            String str="zhangsan";//定义字符串变量
            System.out.println(str+"年龄是:");//输出
            int age=Integer.parseInt("20L");//数据类型转换
            System.out.println(age);
        }catch(Exception e){//catch语句块用来获取异常信息
            e.printStackTrace();//输出异常性质
        }
        System.out.println("program over");//输出信息
    }
}

这里写图片描述
程序依然有最后的提示信息,没有因为异常而终止.
用try-catch语句块进行处理,当try代码块中发生异常时,程序就会调转到catch代码块中执行,执行完catch中的程序代码后,将继续执行catch代码块后的其他代码,而不会执行try代码块中发生异常语句块的代码.
注意: Exception是try代码块专递给catch代码块的变量类型,e是变量名.catch代码块中语句”e.getMessage();”用于输出错误性质.通常,异常处理用以下3个函数来获取异常的有关信息.
1.getMessage()函数:输出错误性质.
2.toString()函数:给出异常的类型与性质
3.printStackTrace()函数:指出异常的性质、性质、栈层次及出现在程序中的位置
注意: 有时为了编程简单忽略catch语句后的代码块,这样try-catch语句中就成了一种摆设,一旦程序在运行过程中出现了异常,就会导致最终运行结果与期望的不一致,而错误发生的原因很难查找,因此要养成良好的编程习惯,最好在catch代码块中写入处理异常的代码.
finally语句块
完整的异常处理语句一定要包含finally,无论程序中有无异常发生,并且无论之间的try-catch是否顺利执行完毕,都会执行finally.
以下4种情况,finally块不会被执行.
1.在finally语句中发生了异常.
2.在前面的代码中使用了System.exit()退出程序.
3.程序所在线程死亡.
4.关闭CPU.

在方法中抛出异常

throws关键字通常被应用在声明方法时,用来指定方法可能抛出的异常,可以使用throws、throw关键字在方法中抛出异常.

1.使用throws关键字抛出异常
throws关键字通常被应用在声明方法时,用来指定方法可能抛出的异常,多个异常可能使用逗号分隔.

2.使用throw关键字抛出异常
throw关键字通常用于方法体中,并且用于抛出一个异常对象.程序在执行到throw语句时立即终止,它后面的语句都不执行.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值