背景:

昨天一个朋友出去采访,遇到这样的问题:“C#  catch那里return。finally也弄它运行?”

个人总结实践:

1、无论有木有出现异常。finally块中代码都会运行

        2、当try和catch中有return时,finally仍然会运行

详细案比例如以下(此处以没有返回值的函数进行验证):

3、假设是值传递。finally中改变的值对try或catch块中return返回的值无影响假设是引用类型參数(地址传递或对象),finally中的值改变对return会产生影响

详细案例:

引用案例--数组类型:

值案例--int类型:

思考:string类型属于引用类型。那么它的返回值会受到finflly的影响吗?还是来看案例吧-----事实上string与int类型的表现一样,不会受到finally的影响:

思考:那么在finally中加上return,会产生什么影响呢?有图有真相:

可见。finally中是不同意出现return的。否则连编译都过不去。

版权声明:笔者:jiankunking 资源:http://blog.csdn.net/jiankunking 本文版权归作者和CSDN合伙人,欢迎转载,但是,如果没有从本节宣布提交权限必须保留。并连接到原来的文章页给出视在位置。

最新文章

  1. ResultSetMetaData和DatabaseMetaData实现数据库中属性,属性值,属性所赋值的获取等
  2. Archlinux在Btrfs分区上的安装(bios篇)
  3. sails不是内部或外部命令的解决方案
  4. ubuntu下Eclipse无法启动
  5. Java核心编程快速学习
  6. Spring JDBC 示例
  7. 《精通android网络开发》--HTTP数据通信
  8. 树莓派初体验,安装Ubuntu 14.04 LTS
  9. DWM1000 巧用Status 快速Debug
  10. [LeetCode] Random Pick with Blacklist 带黑名单的随机选取
  11. Jenkins pipeline 并行执行任务流
  12. JAVA:IDEA使用Junit(3)
  13. CSS背景横向平铺BUG,解决方法
  14. IDEA 自动生成serialVersionUID
  15. Python3:input()输入函数的用法
  16. CSS:Tutorial three
  17. 【iOS开发】创建单例的两种方法
  18. vs2008下Error LINK2005: already defined in ...的一种解决方式
  19. linux安装php7
  20. Voyager的安装及配置文件

热门文章

  1. BZOJ 1823 JSOI 2010 盛宴 2-SAT
  2. EL表达式语言
  3. 1第一个Android应用程序
  4. Android pm命令用法
  5. asp.net学习之SqlDataSource
  6. 汉高澳大利亚sinox接口捆绑经典winxp,全面支持unicode跨语言处理
  7. L轻松学习inux教程5 知识与学习bash
  8. User、Role、Permission数据库设计ABP
  9. 背包问题 (DP)
  10. 运营商网络採用SDN所面临的挑战(一)