IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> 全网最简洁明了的try catch finally return讲解!! -> 正文阅读

[Java知识库]全网最简洁明了的try catch finally return讲解!!

目录

前言

导语

情况1-----无return无finally

情况2-----无return有finally

情况3-----if或catch有return,finally中无return

情况4-----if和catch中有return,finally中无return;

情况5-----if,catch,finally中都有return

结论(重点)


?

前言

? ? ? ? 很久没更新了,因为博主最近这个阶段学习的知识较多,需要时间消化。这里给大家讲下异常处理中的try catch finally return;不懂异常的小伙伴可以先收藏,博主这个阶段学习完成后将会给大家讲讲异常等内容

导语

? ? ? ? 作为一名非科班出身的无基础java初学者。我会在这里记录我的学习过程及心得分享,希望会对你们想要入行的小伙伴有所帮助,多一个参考的点。

? ? ? ?其次希望我的分享能对同样是初学者的你能有所帮助。

? ? ? ?同时我也想以此激励自己学习,如果有志同道合的小伙伴就最好啦。大家一起进步!

? ? ? ? 最后,若您有自己的想法或者觉得我的讲述有问题,需要补充或改正的,欢迎在下方留言互相讨论!!

情况1-----无return无finally

? ? ? ? 代码演示:

 public static void main(String[] args) {
        method();
    }
    public static void method(){
        try {
            System.out.println("throw前的语句被使用");
            throw new Exception();
            //System.out.println("throw后的语句");
        } catch (Exception e) {
            System.out.println("catch中的方法被调用" );
        }
    }

? ? ? ?运行结果:
? ? ? ? ? ? ? ? throw前的语句被使用
? ? ? ? ? ? ? ? catch中的方法被调用

?

情况2-----无return有finally

? ? ? ? 代码演示:

 public static void main(String[] args) {
        method();
    }

    public static void method() {
        try {
            System.out.println("throw前的语句");
            throw new Exception();
            //System.out.println("throw后的语句");
        } catch (Exception e) {
            System.out.println("catch中的方法被调用");
        }
        finally {
            System.out.println("finally中的内容被调用");
        }
    }

?

????????运行结果:

? ? ? ? ? ? ? ? throw前的语句被使用

? ? ? ? ? ? ? ? catch中的方法被调用

? ? ? ? ? ? ? ? finally中的内容被调用

情况3-----if或catch有return,finally中无return

? ? ? ? 代码演示:(演示其中一种情况)
?

  public static void main(String[] args) {
        int i =method();
        System.out.println(i);
    }

    public static int method() {
        try {
            return 1;
        } catch (Exception e) {
          
        }
        finally {

        }
            return2;
    }

? ? ? ? 运行结果:

? ? ? ? ? ? ? ? 1

情况4-----if和catch中有return,finally中无return;

? ? ? ? 代码演示:

public static void main(String[] args) {
        int i =method();
        System.out.println(i);
    }

    public static int method() {
        try {
            return 1;
        } catch (Exception e) {
            return 2;
        }
        finally {

        }

    }

? ? ? ? 运行结果:

? ? ? ? ? ? ? ? 1

情况5-----if,catch,finally中都有return

? ? ? ? 代码演示:
?

   public static void main(String[] args) {
        int i =method();
        System.out.println(i);
    }

    public static int method() {
        try {
            return 1;
        } catch (Exception e) {
            return 2;
        }
        finally {
            return 3;
        }

    }

? ? ? ? 运行结果:

? ? ? ? ? ? ? ? 3

结论(重点)

????????1.try-->catch-->finally ? ? ? 无论什么情况下,finally都会执行。
????????2.try或catch有return情况下,在原来的顺序下,遇到return时先把return后的表达式进? ? ? ? ? ? ? ?行计算并储存起来,而后执行finally中的语句。若finally中有对return后的值进行修改? ? ? ? ? ? ? ?的?操作,如果该值是基本数据类型,则储存起来的值不会被修改,如果是引用类型就? ? ? ? ? ? ?会被修改,最后? ? ? ? ? ? finally执行完毕后,再去执行return,退出语句体。
????????3.finally中有return,则无论前面是否有return,都只会返回finally中return后的值。
????????4.不要在finally块中使用return。

? ? ? ? 5.throw后不能跟语句,即抛出异常后,不能跟其他任何语句,会报错"Unreachable? ? ? ? ? ? ? ? ???statement"

  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2021-10-13 22:25:09  更:2021-10-13 22:25:24 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 22:43:12-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码