转:finally块中的代码一定会执行…
来源:互联网 发布:淘宝店铺排名怎么看 编辑:程序博客网 时间:2024/05/22 05:24
finally块中的代码一定会执行吗
在SunTutorial中有这样一句话:The finally
try
finally
System.out.println(args[
System.out.println("I'mnomal");
}
System.out.println(
}
System.out.println(
}
}
}
运行这段代码,很明显,不论是否有参考输入,"I'mfinally."这句话都会打印出来。这是最常用的写法,很显然与Tutorial中的说明是相符的。
System.out.println(args[
System.out.println("I'mnomal");
return;
}
System.out.println(
return;
}
System.out.println(
}
}
}
代码的修改很简单,只是在try和catch块的结束位置分别加了一个return语句。
I'mexception
I'mfinally.
>javaTest hello
hello
I'mnomal
I'mfinally.
上面分别是输入和不输入参数时运行的结果,很明显,finally中的代码还是执行了。那是不是说try和catch块中的return语句并不起作用吗?我们再次简单修改代码:
System.out.println(args[
System.out.println("I'mnomal");
return;
}
System.out.println(
return;
}
System.out.println(
}
System.out.println("Outof try.");
}
}
在try语句外面再加入一名打印代码,再次编译。
Exception
Unreachable
提示代码不可达,看来return还是有用的,只是在退出方法呼叫之前,会先去执行finally中的代码。
System.out.println(args[
System.out.println("I'mnomal");
System.exit(0);
}
System.out.println(
System.exit(0);
}
System.out.println(
}
}
}
运行代码,终于,"I'm finally."不见了。
向原作者致敬!
- 转:finally块中的代码一定会执行…
- Java牛角尖【013】: finally块中的代码一定会执行吗?
- finally代码块一定会执行吗?
- finally块中的代码什么时候被执行?finally是不是一定会被执行?(见最后引申)
- java的try-catch-finally块中,finally中的代码是否一定会执行?
- finally代码块中的代码什么时候执行
- finally块中的代码一定执行吗
- finally块中的代码一定执行吗
- Java中为什么finally语句块一定会被执行?
- finally一定会执行吗?
- J2EE之final代码块是否一定会执行
- java Finally块中代码什么时候执行
- finally块中代码的执行
- finally{}代码块比return先执行
- JAVA——finally块中的代码什么时候被执行、执行的效果是什么?
- finally中的内容一定会执行吗?极其执行的前后顺序?
- finally中的代码块在什么情况下不会被执行
- finally真的一定会执行吗-并发
- 转:串口通讯,关于javax.comm的安…
- 关于Java串口编程
- 关于Android Socket的总结
- ADB server didn't ACK
- 转一篇很全的关于Java Socket…
- 转:finally块中的代码一定会执行…
- 转:Android ANR异常及其解决方式
- 关于NDK-R7配置正确但是编译报awk&…
- 升级SDK和ADT
- Android Resource目录拾遗
- Finalement——Hello from&nbsp…
- 转:Android中Context详解
- Android.mk文件详解
- JNI的数据类型归纳