黑马程序员技术交流社区
标题:
try,return,finally问题
[打印本页]
作者:
泛大陆
时间:
2015-7-28 08:46
标题:
try,return,finally问题
本帖最后由 泛大陆 于 2015-7-28 08:52 编辑
import java.util.Date;
public class Test7 {
/**
* 7、 用代码证明,在try中写了return,后面又写了finally,是先执行return还是先执行fianlly?
*
*/
/*
* 通过以下代码测试,程序先执行return记录了一个时间,但是没有直接把结果返回并结束进程,而是执行
* finally语句,finally结束后return才将刚才记录的时间返回。
* */
public static void main(String[] args)
{
System.out.println("returnTime:"+rfTest());//调用rfTest方法并将其返回的时间打印输出
}
public static Date rfTest()
{
try
{
System.out.println("try run");
return new Date();//返回一个时间
}
finally
{
System.out.println("finally run");
try
{
Thread.sleep(2000);//为了看到时间差,让线程暂停2秒
}
catch (InterruptedException e)
{
System.out.println(e.toString());
}
System.out.println("finallyTime2:"+new Date());//输出当前时间,方便和return的返回时间比较
}
}
}
复制代码
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2