Java0基础入门之异常、异常分类、异常防护解析
小职 2021-03-02 来源 :Java进阶学习交流 阅读 534 评论 0

摘要:本文主要介绍了Java0基础入门之异常、异常分类、异常防护解析,通过具体的内容向大家展现,希望对大家Java的学习有所帮助。

本文主要介绍了Java0基础入门之异常、异常分类、异常防护解析,通过具体的内容向大家展现,希望对大家Java的学习有所帮助。

Java0基础入门之异常、异常分类、异常防护解析

 

一、异常

 

(一)什么是异常

 

在我们现实生活中,例如感冒发烧、电脑突然出现蓝屏等,在程序中也会出现不正常的情况,例如磁盘不足、网络中断等,像我们手机有时候微信会出现弹窗提示无法响应。在程序执行中,任何中断正常程序运行就是异常。

 

(二)java中引起异常因素

 

第一种,Java 虚拟机检测到不正常的运行,这些状态可能是由以下几种情况引起的:

 

1.表达式算数异常,例如3被0整数。

 

2.在载入程序时出现错误。

 

3.超出某些限制资源,例如使用的内存空间太多了。

 

第二种,Java代码中的throw 语句被运行。

 

第三种,异步异常,这个异常可能的原因是

 

1.thread 的stop 方法被执行。

 

2.Java 虚拟机内部出现错误。

 

(三)java处理异常有两种方式捕获异常和抛出异常

 

1.捕获异常:当明确知道怎么去处理这些异常时,采取捕获的方式进行处理。

 

2.抛出异常:当不知道怎么去处理这些异常时,采取抛出的方式进行处理。

 

(四)异常例子

 

例如:

 

public class p34 {

public static void main(String[] args) {

        // TODO Auto-generated method stub

        int result=div(6,0);//调用div()方法

        System.out.println(result);

}

//此方法实现两个整数相除

public static int div(int a,int b){

        int result=a/b;//定义一个int类型变量result,保存两个数相除结果

        return result;//结果返回值

  }

}

运行的结果是:

 Java0基础入门之异常、异常分类、异常防护解析

 

我们从上面的运行结果可以看到java.lang.ArithmeticException,这个异常是调用div()方法传入了0,在运算时出现错误,因为是被0整除。在Java运行时系统找不到可以捕获异常的方法,就会运行时系统将终止,相应的Java程序也将退出。

 

二、异常分类

 

Object是所有类的父类或基类,Throwable类分别由两个子类Error和Exception。Error表示的是产生的错误,Exception表示产生的异常。

 Java0基础入门之异常、异常分类、异常防护解析

 

Error类表示错误类,表示在程序在运行产生系统出现错误或超出某些限制资源,这种情况是如果改程序本身是不能恢复的运行的。

 

Exception类表示异常类,表示本身可以处理错误,在开发程序中进行异常处理,针对它的子类。

 

Throwable类常用方法

 

String getMessage()方法是返回Throwable详细信息字符串

 

Void printStackTrace()方法是把 Throwable 及其追踪输出至标准错误流。

 

Void printStackTrace()方法是把 Throwable 及其追踪输出到指定输出流。

 

三、try...catch语句

 

1.如果Java运行时系统找不到可以捕获异常的方法,则运行时系统将终止,相应的Java程序也将退出。解决这个问题使用一种异常进行的处理方式是异常处理。

 

2.异常捕获语法

 

try  

{  

//可能发生异常的代码块;  

}  

catch(异常类型  异常的对象名)//捕获并处理异常

{

//异常处理代码块;  

}

3.使用try...catch语句例子

 

public class p35 {

public static void main(String[] args) {

        // TODO Auto-generated method stub

        //定义一个try...catch语句捕获异常

        try{

            int result=div(6,0);//调用div()方法

            System.out.println(result);

        }catch(Exception e){//捕获并处理异常

            System.out.println("捕获异常信息为"+e.getMessage());

        }

        System.out.println("程序继续向下执行");

}

//此方法实现两个整数相除

        public static int div(int a,int b){

            int result=a/b;//定义一个int类型变量result,保存两个数相除结果

            return result;//结果返回值

        }

}

运行的结果是:

 Java0基础入门之异常、异常分类、异常防护解析

 

从上面代码中,try代码块是可能发生异常的代码块,发生被0整除,接着运行catch代码调用Exception对象的getMessage()方法,返回异常信息/ by zero。处理完后继续往下执行。

 

四、总结

 

本文主要介绍了异常、异常分类、try...catch语句。

 

异常是在程序执行中,任何中断正常程序运行就是异常。介绍了引起异常的因素,java处理异常有两种方式捕获异常和抛出异常,使用异常的例子来帮助理解什么是异常。

 

异常分类Object是所有类的父类或基类,Throwable类分别由两个子类Error和Exception。介绍了Throwable类常用方法。

 

当Java运行时系统找不到可以捕获异常的方法,则运行时系统将终止,相应的Java程序也将退出,使用try...catch语句解决这个问题。

 

希望大家通过本文的学习,对你有所帮助!


我是小职,记得找我

✅ 解锁高薪工作

✅ 免费获取最新技术干货教程资源

Java0基础入门之异常、异常分类、异常防护解析

本文由 @小职 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程