第20天 Java中的常见的异常类和异常处理(有栗子)
来源:互联网 发布:推荐淘宝皮鞋店铺 编辑:程序博客网 时间:2024/06/06 14:27
Java中常见的异常类型有以下几类:
下面再简单介绍一下这几个异常类:
1.ArithmeticException类
该类用于描述算术异常,比如当除0时,会抛出该异常。
int re=10/0;//除数为0,抛出ArithmeticException异常
2.NullPointerException类
用来描述空指针异常,当引用对象是null时,如果调用该对象的属性和方法。会抛出该异常。
String str=null;int len=str.length();//因为str为null对象,不能调用length()方法
3.ArrayIndexOutOfBoundsException类
该类用于描述数组下表越界是出现的异常。
int[] a=new int[8];a[8]=9;//数组的最大下标是7,所以此处访问越界
4.NumberFormatException类
该类用于描述字符串转换为数字时的异常。
String str="123AB";Integer.parseInt(str);//里面出现了字符
try和catch语句:
语法格式如下:
try{ 可能产生异常的代码}catch(异常类1 异常对象1){ 异常处理代码段1}catch(异常类2 异常对象2){}...
try代码块中的代码执行后可能有多种异常,程序捕获哪一种类型的异常,是由catch语句中的”异常类“参数指定的。
代码中的每一个catch语句都用来捕获一种类型的异常。如果try块中的代码执行时发生异常,则会由上而下依次查找捕获该异常的catch语句块,并执行该语句块中的代码。
下面写一个程序练一下吧:
/*
*设计一个程序,其功能是从命令行输入整数字符串,再将该整数字符串转换为整数,输入的数据可能具有以下格式: 12345 123 45 123x yz456 对这种异常进行捕获和处理。
*/
package test;import java.util.Scanner; public class HelloWorld{ public static void main(String args[]){ int i; Scanner input=new Scanner(System.in); System.out.println("请输入要输入的数字字符串个数i:"); i=input.nextInt(); String str; str=input.nextLine(); System.out.println(str); for(int j=1;j<=i;j++){ System.out.println("请输入第"+j+"个数字字符串:"); str=input.nextLine(); try{ Integer.parseInt(str); }catch(NumberFormatException e){ System.out.println("有异常产生了!"); } finally{ System.out.println("程序已执行!"); } } System.out.println("程序执行结束啦~"); } }
下面的图片为运行结果:
上面说了关于异常处理时怎么使用try-catch结构实现对异常的处理。
另外呢,在使用该结构时,还必须注意一下几点:
1.catch块一定要与try块一起使用,不能单独的使用catch块。
2.如果不发生异常,catch块永远不会被执行。
3.一旦某个catch块被执行,其他catch块都会被忽略。
4.一个try块可以有多个catch块,但是多个catch块的排列顺序必须是从特殊到一般,最后一个一般是Exception类。
5.try-catch结构可以嵌套使用.
- 第20天 Java中的常见的异常类和异常处理(有栗子)
- java中的常见异常及错误和处理方法
- Java中的异常,异常处理和设计
- java中的常见异常以及处理
- Java中的异常处理中的需要知道的异常类
- 异常处理(006)_常见的Java异常有哪些(运行时)
- 异常处理(007)_常见的java异常有哪些(非运行时)
- JAVA中的异常和处理
- java中的常见异常
- Java中的常见异常
- Java中的常见异常
- Java中的常见异常
- 常见的运行时异常(RuntimeException) 和 复制中的异常处理
- 常见的异常处理
- java中常见的异常处理
- java常见的异常处理汇总
- Java 中常见的异常及处理
- Java异常处理(附常见的异常)
- 石子合并加强版
- bzoj 1430: 小猴打架 prefer编码
- PYQT5学习笔记1
- SharedPreferences的存储与读取
- javascript:slice()
- 第20天 Java中的常见的异常类和异常处理(有栗子)
- Android中优化listview的一种方案
- 本地存储Cookie、localStorage、sessionStorage
- maven 亲测可用国内镜像 阿里云
- 《Kubernetes与云原生应用》系列之五——容器设计模式实践案例:多节点选举模式
- DRV8848通道输出不正常原因
- SQLITE3的一些函数的用法
- Quick中UIPageView的使用
- 深度学习视觉领域常用数据集汇总