Java深入讲解异常处理try catch的使用

目录
  • 1.try-catch异常处理说明
  • 2.try-catch异常处理细节
    • 示例01
    • 测试结果01
    • 示例02
    • 测试结果02

1.try-catch异常处理说明

Java提供try和catch块来处理异常,try块用于包含可能出错的代码。catch块用于处理try块中发出的异常。可以根据需要在程序中有一个或多个try-catch块

基本语法

try{
	//可疑代码
	//将一场生成对应的异常对象,传递给catch块
}catch{
	//对异常的处理
}

2.try-catch异常处理细节

1.如果异常发生了,则异常后面的代码不会执行,直接进入到catch块

2.如果异常没有发生,则顺序执行try的代码块,不会进入到catch。

3.如果希望不管是否发生异常,都执行某段代码,则使用如下代码-finally{}

示例01

package com.demo.trycatch;

/**
 * @version 1.0
 * @auther Demo龙
 */
public class TrycatchDetial {
    public static void main(String[] args) {
        //1.如果异常发生了,则异常后面的代码不会执行,直接进入到catch块
        //ctrl+alt+t
        try {
            String ch="kkk";
            int a=Integer.parseInt(ch);
            System.out.println("number"+a);
        } catch (NumberFormatException e) {
            System.out.println("异常信息:"+e.getMessage());
        }
        System.out.println("程序继续运行");
        // > 2.如果异常没有发生,则顺序执行try的代码块,不会进入到catch。
        try {
            String ch="556";
            int a=Integer.parseInt(ch);
            System.out.println("number="+a);
        } catch (NumberFormatException e) {
            System.out.println("异常信息:"+e.getMessage());
        }
        System.out.println("程序继续运行02");
        //> 3.如果希望不管是否发生异常,都执行某段代码,则使用如下代码-finally{}
        try {
            String ch="Demo龙";
            int a=Integer.parseInt(ch);
            System.out.println("number="+a);
        } catch (NumberFormatException e) {
            System.out.println("异常信息:"+e.getMessage());
        } finally {
            System.out.println("finally被执行");
        }
    }
}

测试结果01

4.可以有多个catch语句,捕获不同的异常(进行不同的业务处理),要求父类异常在后,子类异常在前,如果发生异常,只会匹配一个catch。

5.try-finally配合使用,这种用法相当于没有捕获异常,程序会直接退出,但会执行finally业务逻辑

示例02

package com.demo.trycatch;
/**
 * @version 1.0
 * @auther Demo龙
 */
public class TrycatchDetial02 {
    //4.可以有多个catch语句,捕获不同的异常(进行不同的业务处理),
    // 要求父类异常在后,子类异常在前,如果发生异常,只会匹配一个catch。
    public static void main(String[] args) {
        try {
            Person person = new Person();
            person=null;
            System.out.println("name="+person.getName());//空指针异常
            int n1=9;
            int n2=0;
            int num=n1/n2;//数学异常
            //1.try代码块可能有多个异常
            //2.可以使用多个catch分别捕获不同的异常,相应处理
            //3.要求子类异常写在前面,父类异常写在后面
        }catch (NullPointerException e){
            System.out.println("空指针异常:"+e.getMessage());
        } catch (ArithmeticException c){
            System.out.println("算数异常:"+c.getMessage());
        } catch (Exception e) {
            System.out.println("异常情况:"+e.getMessage());
        } finally {
            System.out.println("finally代码块被执行");
        }
        System.out.println("程序继续运行。");
        //5.try-finally配合使用,这种用法相当于没有捕获异常,
        // 程序会直接退出,但会执行finally业务逻辑
        System.out.println("try-finally细节测试");
        try {
            int m1=9;
            int m2=3;
            System.out.println("m1/m2="+m1/m2);
        } finally {
            System.out.println("执行finally代码块02");
        }
        try {
            int m1=9;
            int m2=0;
            System.out.println("m1/m2="+m1/m2);
        } finally {
            System.out.println("执行finally代码块01");
        }
    }
}
class Person{
    private String name="demo龙";

    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
}

测试结果02

到此这篇关于Java深入讲解异常处理try catch的使用的文章就介绍到这了,更多相关Java try catch内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Java中异常处理之try和catch代码块的使用

    Java try和catch的使用 尽管由Java运行时系统提供的默认异常处理程序对于调试是很有用的,但通常你希望自己处理异常.这样做有两个好处.第一,它允许你修正错误.第二,它防止程序自动终止.大多数用户对于在程序终止运行和在无论何时错误发生都会打印堆栈轨迹感到很烦恼(至少可以这么说).幸运的是,这很容易避免. 为防止和处理一个运行时错误,只需要把你所要监控的代码放进一个try块就可以了.紧跟着try块的,包括一个说明你希望捕获的错误类型的catch子句.完成这个任务很简单,下面的程序包含一个

  • Java try catch finally异常处理组合详解

    try catch finally组合:检测异常,并传递给catch处理,并在finally中进行资源释放. try catch组合 : 对代码进行异常检测,并对检测的异常传递给catch处理.对异常进行捕获处理 public class Demo04 { public static void main(String[] args) { int [] arr={}; //可能会发生异常的语句 int a=get(arr);//可以点第2个或者第3个 System.out.println(a);

  • Java异常处理try catch的基本用法

    我们编译运行程序出错的时候,编译器就会抛出异常.抛出异常要比终止程序灵活许多,这是因为Java提供了一个"捕获"异常的的处理器(处理器)对异常情况进行处理. 如果没有提供处理器机制,程序就会终止,并在控制台上打印一条信息,给出异常的类型.L 比如:使用了NULL引用或者是数组越界等. 异常有两种类型:未检查异常和已检查异常对于已检查异常,处理器器将会检查是否提供了处理器. 然而有许多的异常,如:访问null引用,都属于未检查异常.编译器不会查看是否为这些错误提供了处理器.毕竟,应该用严

  • java异常处理执行顺序详解try catch finally

    目录 不含return的执行顺序 finally子句 含return的执行顺序 返回类型是对象类型时值的变化 结论 不含return的执行顺序 执行顺序为执行try中代码,如果没有异常,然后执行try catch后续的代码.如: public static void main(String[] args) { try { int j = 10 / 2; System.out.println("执行try中代码!"); } catch (Exception e) { e.printSta

  • Java异常处理机制try catch流程详解

    在项目中遇到try...catch...语句,因为对Java异常处理机制的流程不是很清楚,导致对相关逻辑代码不理解.所以现在来总结Java异常处理机制的处理流程: 1.异常处理的机制如下:在方法中用 try... catch... 语句捕获并处理异常,catch 语句可以有多个,用来匹配多个不同类型的异常.对于处理不了的异常或者要转型的异常,在方法的声明处通过 throws 声明异常,通过throw语句拋出异常,即由上层的调用方法来处理该异常. try { 逻辑程序块 } catch(Excep

  • 简单谈谈java的异常处理(Try Catch Finally)

    异常的英文单词是exception,字面翻译就是"意外.例外"的意思,也就是非正常情况.事实上,异常本质上是程序上的错误,包括程序逻辑错误和系统错误. 一 前言 java异常处理大家都不陌生,总的来说有下面两点: 1.抛出异常:throw exception class SimpleException{ public void a() throws Exception{ throw new Exception(); }; } 2.捕获异常: public class MyExcepti

  • Java异常处理之try...catch...finally详解

    异常处理机制已经成为判断一门编程语言是否成熟的标准之一,其对代码的健壮性有很大影响.一直以来异常处理使用不是很得心应手,今天对异常进行了较为深入的学习,这篇主要是对try-catch-finally的一个总结. 一.java继承体系 Java语言为异常处理提供了丰富的异常类,这些类之间有严格的继承关系.如图: 从图中我们可以看出,所有的类都是继承于Throwable这个父类,java将所有的非正常情况分为两种:Error(错误)和Exception(异常),Error错误一般是于虚拟机相关的问题

  • Java IO流—异常及捕获异常处理 try…catch…finally

    目录 一.Java IO流 1.概念 2.IO流的分类(按流向划分) 3.IO流的分类(按操作单元划分) 4.IO流的分类(流的角色划分) 二.Java 异常 1.概述 2.常见的异常 3.异常的分类 三.异常处理方案 1.try-catch-finally 四.try-catch 处理方式 1.一个异常的情况与多个异常的情况 五.Throwable中的方法 1.getMessage() 2.toString() 3.printStackTrace() 4.printStackTrace(Pri

  • Java异常处理try catch的基本使用

    目录 1. 异常 1.1 try…catch异常处理 1.2 多catch并行处理 1.3 throw和throws 关键字的使用 1.4 finally代码块 1.5 RuntimeException异常 1.6 自定义异常 总结 1. 异常 1.1 try…catch异常处理 try catch的异常处理的格式写法 : try{ 被检测的代码 可能发生异常的代码 }catch(异常类的类名 变量名){ 异常的处理方式 : 写什么都可以 定义变量,创建对象,调用方法,循环,判断... 只要写了

  • Java深入讲解异常处理try catch的使用

    目录 1.try-catch异常处理说明 2.try-catch异常处理细节 示例01 测试结果01 示例02 测试结果02 1.try-catch异常处理说明 Java提供try和catch块来处理异常,try块用于包含可能出错的代码.catch块用于处理try块中发出的异常.可以根据需要在程序中有一个或多个try-catch块 基本语法 try{ //可疑代码 //将一场生成对应的异常对象,传递给catch块 }catch{ //对异常的处理 } 2.try-catch异常处理细节 1.如果

  • Java中的异常处理(try,catch,finally,throw,throws)

    目录 抛出异常throw Objects非空判断 声明异常throws 捕获异常try…catch finally 代码块 异常注意事项 前言: Java异常处理的五个关键字:try.catch.finally.throw.throws 抛出异常throw 在编写程序时,我们必须要考虑程序出现问题的情况.比如,在定义方法时,方法需要接受参数.那么,当调用方法使用接受到的参数时,首先需要先对参数数据进行合法的判断,数据若不合法,就应该告诉调用者,传递合法的数据进来.这时需要使用抛出异常的方式来告诉

  • 带你了解Java中的异常处理(下)

    今天继续讲解java中的异常处理机制,主要介绍Exception家族的主要成员,自定义异常,以及异常处理的正确姿势. Exception家族 一图胜千言,先来看一张图. Exception这是一个父类,它有两个儿子,IOException和RuntimeException,每个儿子都很能生,所以它有着一堆的孙子,但其实,Exception家族还有一个大家伙,那就是Throwable,这是一个接口,看名字就知道意思,就是"可被抛出"嘛,它还有一个同父异母的哥哥,那就是Error,这家伙可

  • 带你了解Java中的异常处理(上)

    当当当当当当,各位看官,好久不见,甚是想念. 今天我们来聊聊Java里的一个小妖精,那就是异常. 什么是异常?什么是异常处理? 异常嘛,顾名思义就是不正常,(逃),是Java程序运行时,发生的预料之外的事情,它阻止了程序按照程序员的预期正常执行. 异常处理,应该说异常处理机制,就是专门用来制服这个小妖精的法宝.Java中的异常处理机制能让程序在异常发生时,按照代码的预先设定的异常处理逻辑,针对性地处理异常,让程序尽最大可能恢复正常并继续执行,且保持代码的清晰. 简而言之,Java异常处理就是能让

  • 全面了解java中的异常处理

    目录 Java 异常处理 1. 什么是异常 2. Java 异常类架构 2.1 Throwable 类 2.2 Error 类 2.3 Exception 类 3. 如何进行异常处理 4. 抛出异常 4.1 实例 4.2 throw 4.3 throws 5. 捕获异常 6. 自定义异常 7. 异常链 8. 小结 Java 异常处理 Java 的异常处理是 Java 语言的一大重要特性,也是提高代码健壮性的最强大方法之一.当我们编写了错误的代码时,编译器在编译期间可能会抛出异常,有时候即使编译正

  • Java 基础语法 异常处理

    目录 1. 异常的背景 1.1 邂逅异常 1.2 异常和错误 1.3 Java 异常的体系(含体系图) 1.4 异常的核心思想 1.5 异常的好处 2. 异常的基本用法 2.1 捕获异常 2.1.1 基本语法 2.1.2 示例一 2.1.3 示例二(含使用调用栈) 2.1.4 示例三(可以使用多个 catch 捕获不同的异常) 2.1.5 示例四(可以使用一个 catch 捕获所有异常,不推荐) 2.1.6 示例五(使用 finally,它之间的代码将在 try 语句后执行) 2.1.7 示例六

  • Java详细讲解异常Exception的处理

    目录 1.异常介绍 2.常见的运行时异常 1.空指针异常 2.数学运算异常 3.数组下标越界异常 4.类型转换异常 5.数字格式不正确异常 1.异常介绍 基本概念 程序执行中发生的不正常情况称为异常.(语法错误和逻辑错误不是异常). package com.demo; /** * @version 1.0 * @auther Demo龙 */ public class exception01 { public static void main(String[] args) { int num1

  • 全面理解java中的异常处理机制

    一.java异常总结: 异常就是程序运行时出现不正常运行情况 1.异常由来: 通过java的类的形式对现实事物中问题的描述,并封住成了对象 其实就是java对不正常情况描述后的对象体现 2.对于问题的划分有两种:一种是严重的问题,一种是非严重的问题 对于严重的,java通过Error类来描述 对于Error一般不编写针对性的代码对其进行处理 对于非严重的,java通过Exception类来描述 对于Exception可以使用针对性的处理方式进行处理 3.常见的异常有:数组角标越界异常,空指针异常

  • Java基础之异常处理操作示例

    本文实例讲述了Java基础之异常处理操作.分享给大家供大家参考,具体如下: 示例代码: public class ExecDemo { public static void main(String[] args) { int[] nums = new int[4]; System.out.println("before the exception:"); try { //try代码块 try catch代码块可以嵌套 try{ nums[7] = 10; //数组越界 System.o

随机推荐