java中try,finally和return

原创 2015年11月21日 11:37:23
<span style="font-family: Arial, Helvetica, sans-serif;">public class Test {</span>
	static String s = "";

	public static void main(String args[]) {
		s = test1();
		System.out.println("8  " + s);
	}

	public static String test1() {

		try {
			System.out.println("try.....");
			return s = "a";
		} finally {
			s = "b";
			System.out.println("17  " + s);
		}
	}
}
这是finally中没有return的情况。结果:
try.....
17  b
8  a

当finally中有return时:

public class Test {
	static String s = "";

	public static void main(String args[]) {
		s = test1();
		System.out.println("8  " + s);
	}

	public static String test1() {

		try {
			System.out.println("try.....");
			return s = "a";
		} finally {
			return s = "b";;
		}
	}
}
结果:

try.....
8  b

分析如下:


版权声明:本文为博主原创文章,未经博主允许不得转载。

Java异常捕获之try-catch-finally-return的执行顺序

情况1:try块中没有抛出异常try和finally块中都有return语句 public static int NoException(){ int i=10; try{ S...
  • aaoxue
  • aaoxue
  • 2013年01月23日 21:45
  • 11951

Java中try catch finally语句中含有return语句的执行情况(总结版)

在这里看到了try catch finally语句中含有return语句的几种总结情况,但其实解释的很含糊,而且并不全面。但有一点是可以肯定的,finally块中的内容会先于try中的 return...
  • mmc_maodun
  • mmc_maodun
  • 2013年12月25日 23:06
  • 12868

关于try,finally里面的return,到底谁先执行的问题

在JAVA语言的异常处理中,finally里面代码块是为了保证无论出现了什么样的情况,finally里的代码一定会被执行。但是return 的意思就是结束当前函数的调用并跳出这个函数,因此finall...
  • java19950529
  • java19950529
  • 2016年07月27日 11:49
  • 2239

Java中try catch finally语句中含有return语句的执行情况(总结版)

在这里看到了try catch finally块中含有return语句时程序执行的几种情况,但其实总结的并不全,而且分析的比较含糊。但有一点是可以肯定的,finally块中的内容会先于try中的ret...
  • saytime
  • saytime
  • 2016年04月28日 16:13
  • 959

Java try/catch/finally代码块中加入return后的执行顺序问题

finally可以分两方面理解 1.执行时机问题。finally总会执行(除非是System.exit()),正常情况下在try后执行,抛异常时在catch后面执行 2.返回值问题。可以认...
  • PapperMan
  • PapperMan
  • 2016年05月19日 19:20
  • 482

Java中try catch finally语句中含有return语句的执行情况(总结版)

在这里看到了try catch finally块中含有return语句时程序执行的几种情况,但其实总结的并不全,而且分析的比较含糊。但有一点是可以肯定的,finally块中的内容会先于try中的ret...
  • Goluck98
  • Goluck98
  • 2015年01月18日 10:34
  • 1008

Java中try、finally语句中有return时的执行情况

在Java中当try、finally语句中包含return语句时,执行情况到底是怎样的,finally中的代码是否执行,大家众说纷纭,有的说会执行,有的说不会执行,到底哪种说法正确,现在通过下面的例子...
  • junli_chen
  • junli_chen
  • 2015年11月03日 23:09
  • 465

java基础知识之(==与equals,try catch finally return ,装箱与拆箱)

一:==和equals区别在初学Java时,可能会经常碰到下面的代码: String str1 = new String("hello"); String str2 = new String("he...
  • u013277209
  • u013277209
  • 2017年07月19日 10:21
  • 453

Java中try catch finally语句中含有return语句的执行情况(总结版)

转自http://www.2cto.com/kf/201312/267879.html在这里看到了try >但有一点是可以肯定的,finally块中的内容会先于try中的return语句执行,如果fi...
  • kangkai550
  • kangkai550
  • 2015年05月11日 22:43
  • 481

(转)java 中的try catch finally 语句中含有return语句的执行情况(总结版)

原处:http://blog.csdn.net/ns_code/article/details/17485221   在这里看到了try catch finally块中含有return语句时程序执行的...
  • hu19930613
  • hu19930613
  • 2017年04月30日 14:55
  • 201
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java中try,finally和return
举报原因:
原因补充:

(最多只允许输入30个字)