Java开发过程中关于异常处理的详解
1.运行java时,出现了异常:
我这里是因为:arr[3]不存在:
java.lang.ArrayIndexOutOfBoundsException: 3
public class btyf {public static void main(String[] args){int[] arr={1,2,3}; System.out.println(arr[0]); System.out.println(arr[3]); System.out.println(arr[1]); //1 异常ArrayIndexOutOfBoundsException异常名// btyf.main(btyf.java:13)异常位置第13行////Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 3// at btyf.main(btyf.java:13)}}
结果:
文章图片
java虚拟机:会把异常内容输出控制台
文章图片
文章图片
2.处理异常:
文章图片
public class btyf {public static void main(String[] args){int[] arr={1,2,3}; System.out.println(arr[0]); try{System.out.println(arr[3]); }catch (ArrayIndexOutOfBoundsException e) {System.out.println("你访问的数组索引不存在"); e.printStackTrace(); //输出异常数据:控制台}System.out.println(arr[1]); //1 异常// ArrayIndexOutOfBoundsException异常名// btyf.main(btyf.java:13)异常位置//Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 3// at btyf.main(btyf.java:13)}}
结果:
通过try抓异常,后面没有异常的代码就不会因为前面的代码一些异常而停止,
就可以执行
文章图片
3.throwable:成员方法: System.out.println(e.toString()); //打印出异常内容:位置和名称
e.printStackTrace(); //输出异常数据:控制台
System.out.println(e.getMessage()); 一样
多用:System.out.println(e.toString()); 这个
文章图片
try{System.out.println(arr[3]); }catch (ArrayIndexOutOfBoundsException e) {//System.out.println("你访问的数组索引不存在"); // e.printStackTrace(); System.out.println(e.getMessage()); //public String getMessage() {//return detailMessage; //}System.out.println(e.toString()); }
结果:
文章图片
4.throws:抛出异常:
文章图片
但是在异常处:还是要添加try catch
添加位置:异常成员方法
public static void main(String[] args)throws ArrayIndexOutOfBoundsException{}
代码:
public class uytig {public static void main(String[] args)throws ArrayIndexOutOfBoundsException{int[] arr={1,2,3}; System.out.println(arr[0]); try {System.out.println(arr[3]); } catch (Exception e) {e.printStackTrace(); }System.out.println("执行中"); }}
文章图片
【Java开发过程中关于异常处理的详解】到此这篇关于Java开发过程中关于异常处理的详解的文章就介绍到这了,更多相关Java 异常内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
推荐阅读
- JAVA(抽象类与接口的区别&重载与重写&内存泄漏)
- 深入理解Go之generate
- 标签、语法规范、内联框架、超链接、CSS的编写位置、CSS语法、开发工具、块和内联、常用选择器、后代元素选择器、伪类、伪元素。
- 事件代理
- Java|Java OpenCV图像处理之SIFT角点检测详解
- java中如何实现重建二叉树
- 数组常用方法一
- 【Hadoop踩雷】Mac下安装Hadoop3以及Java版本问题
- Java|Java基础——数组
- RxJava|RxJava 在Android项目中的使用(一)