文档章节

Java中finally块报finally block does not complete norm

Drystal
 Drystal
发布于 2014/06/20 14:36
字数 255
阅读 6
收藏 0

一、出现问题

当finall块中包含return语句时,Eclipse会给出警告"finally block does not complete normally"



二、分析原因
1 finally块中的return语句会覆盖try块、catch块中的return语句
2 如果finally块中包含了return语句,即使前面的catch块重新抛出了异常,则调用该方法的语句也不会获得catch块重新抛出的异常,而是会得到finally块的返回值,并且不会捕获异常


三、结论

finally内部使用 return 语句是一种很不好的习惯,如果try中还有return语句,它会覆盖了try 区域中 return语句的返回值,程序的可读性差。面对上述情况,其实更合理的做法是,既不在try block内部中使用return语句,也不在finally内部使用 return语句,而应该在 finally 语句之后使用return来表示函数的结束和返回。


原帖地址:http://blog.csdn.net/luckarecs/article/details/7214826


本文转载自:http://blog.csdn.net/luckarecs/article/details/7214826

共有 人打赏支持
Drystal
粉丝 2
博文 11
码字总数 1140
作品 0
成都
程序员
私信 提问
【Elasticsearch】打分策略详解与explain手把手计算

一、目的 一个搜索引擎使用的时候必定需要排序这个模块,一般情况下在不选择按照某一字段排序的情况下,都是按照打分的高低进行一个默认排序的,所以如果正式使用的话,必须对默认排序的打分...

Airship
05/10
0
0
关于 Java 中 finally 语句块的深度辨析

文章来自 IBM developerWorks 可不能小看这个简单的 finally,看似简单的问题背后,却隐藏了无数的玄机。接下来我就带您一步一步的揭开这个 finally 的神秘面纱。 问题分析 首先来问大家一个...

IBMdW
2011/07/15
285
4
Python 问题求助~

def __norm_cval(self.cmpres): return cmp(cmpres, 0) def __cmp__ (self, other): return self.__norm_cval(cmp(self.__num , other.__num)) +\ self.__norm_cval(cmp(self.__string,other......

Helloall
2014/10/28
155
1
CNN推理优化系列之一:Filters pruning

介绍 CNN模型简化以减少参数数量及增加计算效率可分为两种主要方法:一类是设计参数更少、所需计算更少的CNN结构像MobileNet/SqueezeNet/ShuffleNet等;另一类则是在常规CNN模型(如VGG/Res...

manofmountain
11/10
0
0
程序中凭空出现tw2865_video_norm stVideoMode;请问tw2865_video_norm这是什么类型的啊?

程序中凭空出现tw2865_video_norm stVideoMode;请问tw2865_video_norm这是什么类型的啊? tw2865_video_norm这是在什么头文件中的呢,是个宏定义吗?...

人都有个名
2014/05/13
95
0

没有更多内容

加载失败,请刷新页面

加载更多

线程安全性--volatile

volatile:当多个线程进行操作共享数据时,可以保证内存中的数据是可见的; @Slf4jpublic class MyVolatile { public static void main(String[] args) { ThreadRun threadRun...

wuyiyi
10分钟前
0
0
大数据入门之hadoop相关概念知识点整理

Hadoop是一个开源框架,允许使用简单的编程模型在跨计算机集群的分布式环境中存储和处理大数据。它的设计是从单个服务器扩展到数千个机器,每个都提供本地计算和存储。今天整理了一些关于had...

技术阿飞
11分钟前
0
0
ssh 免登

ssh-copy-id三步实现SSH无密码登录和ssh常用命令 ssh-copy-id -i .ssh/id_rsa.pub 用户名字@192.168.x.xxx

miaojiangmin
13分钟前
0
0
2018阿里云双12年终大促主会场全攻略

2018阿里云双12年终大促活动已经于12月7日正式开启,从已开放的活动页面来看,活动分为两个阶段: 12月7日-12月23日的拉新返现阶段和12月24日-12月28日的TOP100英雄榜PK阶段。 活动核心亮点:...

阿里云官方博客
13分钟前
0
0
聊聊flink的MemoryStateBackend

序 本文主要研究一下flink的MemoryStateBackend StateBackend flink-runtime_2.11-1.7.0-sources.jar!/org/apache/flink/runtime/state/StateBackend.java @PublicEvolvingpublic interface......

go4it
14分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部