本篇文章给大家分享的是有关Java异常解读以及通过业务逻辑解决异常的方式是什么,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
1、异常体系结构:
1.1:定义:
程序在运行期间发生的不正常的情况称之为异常。
1.2:jvm解决异常的方式:
1、终止正在运行程序 2、输出当前异常信息 a、异常的类型 (jdk内部维护了当前异常的一个对象 用当前对象来描述当前出现的异常) b、异常的原因 c、异常可能出现的行数 |
1.3:程序出现异常列子:
package com.shsxt.exception; import java.util.Scanner; public class Test02 { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.println("请输入被除数---->"); int num1 = input.nextInt(); System.out.println("请输入除数---->"); //关闭当前的Scanner input.close(); int num2 = input.nextInt(); System.out.println(num1+"/"+num2+"="+(num1/num2)); } }
|
报错信息:
二、通过业务逻辑解决异常的方式:
package com.shsxt.exception; import java.util.Scanner; public class Test03 { public static void main(String[] args) { Scanner input = new Scanner(System.in); System.out.println("请输入被除数---->"); //判定一次用户输入的值是不是我们需要的 if(input.hasNextInt()){//下一次获取到的值是否是一个int值 如果是返回true 如果不是返回fasle int num1 = input.nextInt(); System.out.println("请输入除数---->"); //判定用户输入 if(input.hasNextInt()){ int num2 = input.nextInt(); if(num2!=0){ System.out.println(num1+"/"+num2+"="+(num1/num2)); }else{ System.out.println("除数不能为0"); } }else{ System.out.println("用户输入除数有误"); } }else{ System.out.println("用户输入逇被除数有误"); } } }
|
PS:注意:
通过大量的if判断解决程序在执行过程中可能出现的异常情况。 * 优势:确实可以将异常信息不交由jvm解决 显示更友好的提示信息 * 劣势:编写的代码量太大了 而且后期不利于维护 并且程序员永远不知道用户有哪些输入 |
以上就是Java异常解读以及通过业务逻辑解决异常的方式是什么,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注编程网行业资讯频道。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341