`
liuwei1981
  • 浏览: 779047 次
  • 性别: Icon_minigender_1
  • 来自: 太原
博客专栏
F8258633-f7e0-30b8-bd3a-a0836a5f4de5
Java编程Step-by...
浏览量:162854
社区版块
存档分类
最新评论

java解惑--优柔寡断(异常)

阅读更多

     下面的这个程序,它的decision方法将返回一个true,但它也返回false,那么,它打印的到底是什么呢?它是合法的么?

    

public calss Indecisive{
    public static void main(String[] args){
      System.out.println(decision());
   }
    static boolean decision(){
      try{
         return true;
      }finally{
         return false;
      }
   }
}

 

 

  编译该程序,没有报任何错误,运行该程序,发现它打印的是false;

 

   原因就在于,在一个try-finally语句中,finally语句总是在控制权离开try语句块时执行。无论try语句块是正常结束的,还是意外结束的,情况都是一样。

 

   总之,每一个finally语句都应该正常结束,除非抛出不受检查的异常。千万不要用return,break,continue或throw来退出fianlly语句块,并且千万不要允许让受检查的异常传播到finally语句块之外

 

分享到:
评论

相关推荐

    java解惑--异常地危险

    ### Java解惑——异常地危险 #### 背景与问题描述 在Java开发过程中,开发者经常需要处理多线程编程。随着Java平台的发展和完善,一些早期提供的API由于设计上的考虑不足或者潜在的安全隐患,逐渐被标记为废弃,并...

    java解惑--疑难问题解疑

    本文将针对"java解惑--疑难问题解疑"的主题,对一些常见的Java疑难问题进行详细解析,旨在帮助初学者更好地理解和解决这些问题。 1. **内存管理与垃圾回收**:Java通过自动垃圾回收机制来管理内存,这为开发者减轻...

    java解惑 - Java谜题破解

    探索Java的奥秘,java解惑.pdf

    java解惑 - 最后的笑声

    《Java解惑——最后的笑声》是一篇深入探讨Java编程中常见问题和陷阱的文章,作者在ITEYE博客上分享了其对Java的理解和实践经验。这篇文章主要聚焦于那些初学者或经验丰富的开发者都可能忽视的细节,帮助我们提高...

    java解惑-语法细节介绍

    ### Java解惑——语法细节介绍 #### 概述 Java作为一种广泛应用的编程语言,拥有庞大的用户群体和丰富的应用场景。在日常开发过程中,我们往往会遇到一些容易忽视却又十分重要的语法细节。这些细节虽然不起眼,但...

    Java解惑-java初级知识分析

    主要是java面试中要求的一些细节知识,如表达试等。

    JAVA解惑-很经典的JAVA书籍

    深刻地分析了JAVA的一些疑难问题,也介绍了JAVA在处理一些特定问题的技巧

    JAVA解惑-Pg285.pdf

    表达式之谜,符号之谜,循环之谜,异常之谜,类之谜,库之谜,各种谜题。

    Java解惑(中文版)_java_java解惑_solve65p_

    6. **异常处理**:学习Java的异常处理机制,包括try-catch-finally语句块,以及自定义异常。 7. **集合框架**:熟悉ArrayList、LinkedList、HashSet、HashMap等集合类的使用,以及泛型的概念。 8. **输入/输出流**...

    java 解惑 java 解惑 java 解惑

    java 解惑 java 解惑 java 解惑 java 解惑 java 解惑 java 解惑

    Java学习利器-JAVA解惑

    然而,学习Java的过程中,初学者或经验丰富的开发者都可能会遇到一些棘手的问题,这就是"Java学习利器-JAVA解惑"想要解决的问题。 这份名为"JAVA解惑"的PDF文档,可能是由一位经验丰富的Java开发者或者教育者编写的...

    最新版的Java-解惑

    《Java解惑》是一本专为Java初学者和进阶者设计的指南,旨在帮助读者解决在学习和实践中遇到的各种问题。这本书深入浅出地解析了Java编程中的常见困惑,涵盖了语言基础、类库应用、多线程、网络编程、异常处理、内存...

    JAVA面试题解惑--经典面试题

    finally关键字用于异常处理,确保finally块中的代码总会被执行,无论是否有异常发生。finalize()是Object类的一个方法,用于垃圾回收前做一些清理工作,但并不保证一定被调用,且通常不推荐直接使用。 (五)Java中...

    2010年-Java解惑(中文)

    《Java解惑(中文)》是一本专注于解决Java编程中常见问题和困惑的资源集合,旨在帮助初学者和有经验的开发者更好地理解和掌握Java语言。本文将深入探讨Java编程中的关键概念、常见问题以及解决方案。 1. **Java...

    JAVA 解惑 java经典

    3. **异常处理**:Java通过try-catch-finally语句块进行异常处理,理解异常类型、异常的抛出与捕获,以及自定义异常,能有效增强程序的健壮性。 4. **集合框架**:ArrayList、LinkedList、HashMap等是Java集合框架...

    Java解惑 中文版

    《Java解惑中文版》是一本专为Java程序员设计的指南,旨在帮助读者解决在编程过程中遇到的各种问题,提升程序的健壮性。本书深入浅出地探讨了Java语言的核心概念、常见疑惑以及最佳实践,旨在使开发者能够编写出更...

    Java解惑.pdf

    这份“Java解惑.pdf”文档很可能包含了解决Java开发者在编程过程中遇到的常见问题和困惑的详细解答。以下是可能涵盖的一些Java相关知识点: 1. **基础语法**:Java的基础语法包括变量、数据类型、运算符、流程控制...

Global site tag (gtag.js) - Google Analytics