`

[随记] try catch finally return 执行顺序

    博客分类:
  • Java
阅读更多
package com.s.example;

/**
 * 测试try cache finally 执行顺序以及return
 * @author jacksang
 *
 */
public class Test {

	public static void main(String[] args) {
		
		int i;
		
		i = testOne();
		System.out.println(i);
		
		i = testTwo();
		System.out.println(i);
	}
	
	/**
	 * 在try出现异常finally出现return是否会执行
	 */
	public static int testOne(){
		try {
			System.out.println("try"); 
			throw new RuntimeException();
		} catch(Exception e) {
			System.out.println("catch");
		} finally {
			System.out.println("finally");
			return 1;
		}
		return 2;
	}
	
	//执行顺序
//	1. 打印"try"
//	2. 遇到throw RuntimeException
//	3. 捕获异常信息走catch,打印"catch"
//	4. 最后执行finally,并且返回1
//	5. main函数中输出1 (finally中包含return后外部return不执行)

	/**
	 * try中return会不会执行finally
	 */
	public static int testTwo(){
		try {
			System.out.println("try"); 
			return 1;
		} catch(Exception e) {
			System.out.println("catch");
		} finally {
			System.out.println("finally");
		}
		return 2;
	}
	//执行顺序
//	1. 打印"try"
//	2. 最后执行finally,并且返回1
//	3. main函数中输出1 (finally中包含return后外部return不执行)
	//注意如果在finally中包含return,将直接返回,try中return失效
	
}
 
 

分享到:
评论

相关推荐

    一些有关哈希函数的随记

    这篇随记将探讨哈希函数的基本概念、性质以及在实际应用中的重要性。 哈希函数,也称为散列函数,是一种特殊的算法,它将任意长度的输入(也称为预映射或消息)转化为固定长度的输出,这个输出通常被称为哈希值或...

    互联网公司实习日记随记参考.pdf

    互联网公司实习日记随记参考.pdf互联网公司实习日记随记参考.pdf互联网公司实习日记随记参考.pdf互联网公司实习日记随记参考.pdf互联网公司实习日记随记参考.pdf互联网公司实习日记随记参考.pdf

    随记_电气_

    【标题】:“随记_电气_”提示我们这是一份关于电气工程领域的个人笔记或学习心得,可能包含了一些作者在学习或实践中积累的电气知识。 【描述】:“电气相关的知识,随手写的,不知道行不行11111”表明这份文档...

    c++随记.docx

    ### C++ 随记知识点总结 #### 一、内存管理与 new/delete 操作符 在 C++ 中,`new` 和 `delete` 是用于动态内存分配的关键字。`new` 用于在堆区分配内存,`delete` 用于释放之前通过 `new` 分配的内存。使用 `new`...

    linux net 管理随记

    linux net 管理随记,留着个人备忘

    c#随记.docx

    编程语言的执行方式主要有两种:编译执行和解释执行。C#采用的是中间码(MSIL,Microsoft Intermediate Language)加CLR的方式,程序源代码先被编译成MSIL,然后由CLR编译成机器码执行,不同于Java虚拟机(JVM)的...

    NativeJS随记 - 浅析JavaScript Events

    `addEventListener`是标准方法,支持同时添加多个事件处理函数,而`attachEvent`只支持一个处理函数,并且顺序执行可能与添加的顺序相反。 2. **事件触发**:通过`dispatchEvent`方法可以手动触发一个事件,这在...

    git随记 git

    git随记 git

    面试随记???随时更新

    面试随记???随时更新

    重点小学生寒假记随记大全.doc

    重点小学生寒假记随记大全.doc

    公司法务实习日记随记三篇.pdf

    公司法务实习日记随记三篇.pdf

    会计专业毕业实习日记随记篇.pdf

    会计专业毕业实习日记随记篇.pdf

    重点小学生母亲节日记随记大全.doc

    重点小学生母亲节日记随记大全.doc

    随记app,微博与博客整合

    随记App是一款集成微博与博客功能的毕业设计项目,旨在为用户提供一个统一的平台来管理和分享他们的日常思考和生活点滴。这个项目分为客户端和服务端两部分,分别实现了用户交互界面和后台数据处理。 在Android...

    EHCache的使用随记

    **EHCache的使用随记** EHCache是一款广泛应用于Java环境中的高效、易用且功能丰富的内存缓存系统。它能够显著提升应用性能,通过将常用数据存储在内存中,避免了反复从数据库读取,降低了I/O延迟。本文将探讨...

    网络原理随记.pdf

    计算机网络原理随记 在本资源中,我们将讨论计算机网络的基本概念、发展历程、网络架构、协议栈、数据传输、网络互通、安全性等方面的知识点。 计算机网络的基本概念 计算机网络是指将多个计算机设备连接起来,以...

    小学三年级秋游日记随记五篇.pdf

    小学三年级秋游日记随记五篇.pdf

    读书笔记:Java并发编程之美阅读随记.zip

    读书笔记:Java并发编程之美阅读随记

    微信小程序小手随记个人记账软件系统

    微信小程序“小手随记”个人记账软件系统是一个基于.NET框架和SQL Server数据库的完整解决方案,旨在提供用户友好的移动记账体验。这个系统包括三个主要组成部分:前台小程序源代码、后台接口源代码和后台管理源代码...

    随记小时光设计书1

    在"随记小时光设计书1"中,我们主要讨论的是用户信息和手账信息的设计,特别是在数据库方面的应用。这个设计涉及到用户信息的多个关键组成部分,包括昵称、用户名、密码、邮箱、手机号以及权限和加密key的管理。下面...

Global site tag (gtag.js) - Google Analytics