当前位置: 首页 > news >正文

企业网站建设方案应该怎么做重庆建设工程造价协会

企业网站建设方案应该怎么做,重庆建设工程造价协会,360建筑网招聘电话,话费充值代理平台Markdown版本笔记我的GitHub首页我的博客我的微信我的邮箱MyAndroidBlogsbaiqiantaobaiqiantaobqt20094baiqiantaosina.com异常 try catch finally return 执行关系 MD 目录 目录探讨finally语句的执行与return的关系探讨finally语句的执行与return的关系 Java异常捕获机制try.…Markdown版本笔记我的GitHub首页我的博客我的微信我的邮箱MyAndroidBlogsbaiqiantaobaiqiantaobqt20094baiqiantaosina.com 异常 try catch finally return 执行关系 MD 目录 目录探讨finally语句的执行与return的关系 探讨finally语句的执行与return的关系 Java异常捕获机制try...catch...finally块中的finally语句是不是一定会被执行不一定至少有两种情况下finally语句是不会被执行的 try语句没有被执行到如在try语句之前就返回了这样finally语句就不会执行这也说明了finally语句被执行的必要而非充分条件是相应的try语句一定被执行到。在try块中有System.exit(0)这样的语句System.exit(0)是终止Java虚拟机JVM的连JVM都停止了所有都结束了当然finally语句也不会被执行到。1、finally语句是在try的return语句执行之后return返回之前执行的 测试案例 public class TestFinally {public static void main(String[] args) {System.out.println(test());}public static String test() {try {System.out.println(try block);if (new Random().nextBoolean()) {return 直接返回;} else {return test2();}} finally {System.out.println(finally block);}}public static String test2() {System.out.println(return statement);return 调用方法返回;} } 运行结果 try block finally block 直接返回 或 try block return statement finally block 调用方法返回 说明try中的return语句先执行了但并没有立即返回而是等到finally执行结束后再返回。 这里大家可能会想如果finally里也有return语句那么是不是就直接返回了try中的return就不能返回了看下面。 2、finally块中的return语句会覆盖try块中的return返回 public class TestFinally {public static void main(String[] args) {System.out.println(test());}public static String test() {try {System.out.println(try block);return 在try中返回;} finally {System.out.println(finally block);return 在finally中返回;}// return finally外面的return就变成不可到达语句需要注释掉否则编译器报错;} } 运行结果 try block finally block 在finally中返回 这说明finally里的return直接返回了就不管try中是否还有返回语句。 这里还有个小细节需要注意finally里加上return过后finally外面的return b就变成不可到达语句了也就是永远不能被执行到所以需要注释掉否则编译器报错。 3、如果finally语句中没有return语句覆盖返回值那么原来的返回值可能因为finally里的修改而改变也可能不变 测试用例 public class TestFinally {public static void main(String[] args) {System.out.println(test());}public static int test() {int b 20;try {System.out.println(try block);return b 80;} finally {b 10;System.out.println(finally block);}} } 运行结果 try block finally block 100 测试用例2 public class TestFinally {public static void main(String[] args) {System.out.println(test());}public static ListInteger test() {ListInteger list new ArrayListInteger();list.add(10086);try {System.out.println(try block);return list;} finally {list.add(10088);System.out.println(finally block);}} } 运行结果 try block finally block [10086, 10088] 这其实就是Java到底是传值还是传址的问题了简单来说就是Java中只有传值没有传址。 这里大家可能又要想是不是每次返回的一定是try中的return语句呢那么finally外的return不是一点作用没吗请看下面 4、try块里的return语句在异常的情况下不会被执行这样具体返回哪个看情况 public class TestFinally {public static void main(String[] args) {System.out.println(test());}public static int test() {int b 0;try {System.out.println(try block);b b / 0;return b 1;} catch (Exception e) {b 10;System.out.println(catch block);} finally {b 100;System.out.println(finally block);}return b;} } 运行结果是 try block catch block finally block 110 这里因 为在return之前发生了异常所以try中的return不会被执行到而是接着执行捕获异常的 catch 语句和最终的 finally 语句此时两者对b的修改都影响了最终的返回值这时最后的 return b 就起到作用了。 这里大家可能又有疑问如果catch中有return语句呢当然只有在异常的情况下才有可能会执行那么是在 finally 之前就返回吗看下面。 5、当发生异常后catch中的return执行情况与未发生异常时try中return的执行情况完全一样 public class TestFinally {public static void main(String[] args) {System.out.println(test());}public static int test() {int b 0;try {System.out.println(try block);b b / 0;return b 1;} catch (Exception e) {b 10;System.out.println(catch block);return 10086;} finally {b 100;System.out.println(finally block);}//return b;} } 运行结果 try block catch block finally block 10086 说明了发生异常后catch中的return语句先执行确定了返回值后再去执行finally块执行完了catch再返回也就是说情况与try中的return语句执行完全一样。 总结 finally块的语句在try或catch中的return语句执行之后返回之前执行且finally里的修改语句可能影响也可能不影响try或catch中return已经确定的返回值若finally里也有return语句则覆盖try或catch中的return语句直接返回2019-3-4转载于:https://www.cnblogs.com/baiqiantao/p/10472137.html
http://www.zqtcl.cn/news/976617/

相关文章:

  • 上海微网站开发网站 选项卡 图标
  • 淘宝网站建设的目标什么做网站公司 营销
  • 360企业网站认证wordpress 个人照片
  • 韩国私人网站服务器创业做网站APP开发
  • 成都网站建设推来客网站系统报价wordpress 本地图片 图床
  • 跨境电商怎么做流程青岛网站建设seo
  • 怎么搭建网站平台网站建设相关文献
  • 网站前面的小图标怎么做wordpress文章页广告插件
  • 设计制作一个 个人主页网站淄博做网站的公司都有哪些
  • 10月哪个网站做电影票活动宁波设计公司有哪些
  • 网站建设的pest分析公司erp系统
  • 网站开发一般用哪个浏览器高端酒店网站模板
  • 响应式网站开发哪个好徐州关键字优化咨询
  • 企业建站都有什么网站宁波那家公司做网站好
  • 哪里有零基础网站建设教学培训网页制作要多少钱
  • 云南建站网站建设的编程技术
  • 知名的饰品行业网站开发wordpress镜像存储插件
  • 网站整体地图怎么做小榄公司网站建设
  • 体育西网站开发方案无锡锡山区建设局网站
  • 房地产 网站 欣赏建网站找谁
  • 网站创建一般创建哪种类型沈阳装修公司报价
  • 如何在网站后台做网页寻找赣州网站建设
  • 生态农庄网站模板志鸿优化网下载
  • 如何做企业网站广州企业宣传片
  • wordpress淘宝客建站舆情中心
  • 昆明做网站多少钱南宁网站建设培训班
  • 万网一台虚拟主机做多个网站wordpress畅言插件
  • 南宁网站建设优势辽宁大连直客部七部电话
  • 淮安网站建设报价.net网站制作
  • 做母亲节网站的素材最好用的搜索引擎排名