- 浏览: 99158 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (48)
- ruby (7)
- scala (1)
- java (11)
- jython (1)
- python (1)
- life (0)
- jruby (1)
- javascript (1)
- 翻译 (0)
- lua (2)
- SUSE (1)
- scheme (6)
- amb (1)
- 编译器 (0)
- javaee (1)
- 分布式 (0)
- 并发 (1)
- 杂感 (1)
- IO (0)
- POJO (0)
- EJB (0)
- concurrent (0)
- 算法 (1)
- ibm (0)
- JNI (0)
- AOP (0)
- asm (0)
- Groovy (1)
- agent (0)
- instrument (0)
- manifest (1)
- classloader (0)
- jboss (0)
- code (0)
- OSGI (0)
- 庄子 (0)
- JTA (0)
- SA (1)
- clojure (0)
- collections (0)
- hotswap (0)
- 序列化 (0)
- CORS (0)
- 停机 (0)
- JVM (0)
- parallel (0)
- NIO (0)
- weblogic (0)
- transaction (1)
- 反思 (1)
- 事务 (1)
- 海量数据 (0)
- JDO (0)
- JPA (0)
- storm (0)
- log4j (0)
- java2d (0)
- btrace (0)
- hadoop (1)
- cygwin (1)
- sshd (1)
- wanlu (0)
- mysql (0)
- debug (0)
- autotest (0)
- Error (0)
- 数据结构 (0)
- descriptor (0)
- jdb (0)
- hsdb (0)
- wiki (0)
- maven (0)
- spring (0)
- eclipse (0)
- mvc (0)
- 代理 (0)
- oracle (0)
- hibernate (1)
- Hash (0)
- blockingqueue (0)
- remember (0)
- graphviz (0)
- http (0)
- post (0)
- jdbc (0)
- websocket (0)
- inter (0)
- got error: The Network Adapter could not establish the connection when creating a data source in Weblogic pointing to a Oracle database (1)
- bug (0)
- xml (0)
- mail (0)
- db (0)
- JAXB (0)
- StAX (0)
- google (0)
- haskell (1)
- rpc (0)
- read-code (0)
- spring-cloud (0)
- service-registry-discovery (0)
最新评论
-
IamSungod:
很有探索精神,学过多种编程语言呀
clojure parse xml -
messi_18:
是的。不知道别的平台是否也有类似问题。
scalatest 尝试(一) -
llh110220:
lz在windows下编写的吧
scalatest 尝试(一)
昨天闲得无聊,忽然想起了曾经的一个疑虑:貌似有这样的线索:在catch语句里写return语句会不会真的返回,前提是有finally语句。
这段代码,有异常的时候会返回什么结果?
反编译一下:
从字节码看是4。try语句块中和catch中的return都不会真的返回。只有finally中的才算数。
int cal(){ int ret = 1; try {ret=2;return ret;} catch(Exception e){ret=3;return ret;} finally { ret=4; return ret; } }
这段代码,有异常的时候会返回什么结果?
反编译一下:
int cal(); Code: Stack=1, Locals=5, Args_size=1 0: iconst_1 1: istore_1 2: iconst_2 3: istore_1 4: iload_1 5: istore_2 6: iconst_4 7: istore_1 8: iload_1 9: ireturn 10: astore_2 11: iconst_3 12: istore_1 13: iload_1 14: istore_3 15: iconst_4 16: istore_1 17: iload_1 18: ireturn 19: astore 4 21: iconst_4 22: istore_1 23: iload_1 24: ireturn Exception table: from to target type 2 6 10 Class java/lang/Exception 2 6 19 any 10 15 19 any 19 21 19 any LineNumberTable: line 3: 0 line 4: 2 line 6: 6 line 7: 8 line 4: 10 line 6: 15 line 7: 17 line 6: 19 line 7: 23
从字节码看是4。try语句块中和catch中的return都不会真的返回。只有finally中的才算数。
发表评论
-
Atomic reference vs volatile reference
2015-12-21 00:05 469volatile reference和atomic refer ... -
java.lang.ClassNotFoundException: javax.mail.internet.MimeMessage
2013-06-27 16:27 0Today when I try to send mail b ... -
java exchanger
2013-06-19 15:54 0Today focus on: multi-thread in ... -
java blocking queue performance issue when large concurrency
2013-05-16 15:35 0I recalled someone ask me a que ... -
发现了几篇关于java虚拟机的好文章,要好好消化一下
2013-04-19 15:49 0好久没有关注jvm了,今天翻到了几篇好文章。先记下,有时间消化 ... -
Java Endorsed Standards Override Mechanism
2013-04-18 17:56 0Today I read an article named & ... -
java.lang.LinkageError
2012-12-11 14:13 0今天遇到了一个问题java.lang.IllegalAcces ... -
管理log插入。比如编译时插入。
2012-11-20 20:51 0管理log插入。比如编译时插入。 萌发这个想法是因为每次,调试 ... -
java解惑44题没重现
2012-11-09 02:18 0java解惑第44题我没有重现。 jdk1.6.0_35 ... -
java2d学习
2012-11-07 00:37 0想要系统的学习一下java2d 第一步学习画阿基米德螺旋曲线。 ... -
ASM初探
2012-11-02 00:38 0今天遇到了一个问题。Log4J的config and watc ... -
String.split
2012-10-31 21:02 846String.split(String reg)这个方法一点不 ... -
mina,hbase,zookeeper
2012-10-26 22:49 0我要学习探索新知识的有效手段。从这两个开始吧。 -
log4j那些事儿
2012-10-25 19:31 0都知道Log4j是用来输出日志的框架。不怕笑话,我一直都知道它 ... -
storm是什么
2012-09-28 16:49 0storm是什么?需要研究一下。 https://github ... -
你知道吗,-Long.MIN_VALUE == Long.MIN_VALUE
2012-09-20 22:58 3288相信吗,-Long.MIN_VALUE == Long.MIN ... -
transaction in JAVAEE and Spring
2012-09-14 19:16 0XA transaction and local transa ... -
weblogic 数据源的事务管理
2012-09-14 01:50 0有这样一个case,在weblogic下配置了两个数据源,其中 ... -
java NIO
2012-09-13 16:52 0由这篇文章想到了NIO。 然后又提到了这篇文章。 -
java 并发与并行(Java concurrent and parallel)
2012-09-13 16:19 0起因是想知道BlockedQueque是干嘛的,接着想到了这篇 ...
相关推荐
文章强调了Python的异常处理机制,提倡遵循最小惊讶原则,即函数应保持返回值的可预见性。同时,也指出了一种常见的误区,即认为函数应当只返回一种类型的数据,但这并不意味着必须是同一种"类型"或基于同一"基类"的...
在Java中,函数可以有返回值,也可以没有返回值,理解函数的参数传递机制和作用域规则至关重要。 4. **类和对象**:Java是一种面向对象的语言,类是创建对象的蓝图,对象则是类的实例。理解类的属性(成员变量)和...
《C++习题程序(谭浩强)》是基于谭浩强教授的C++教材配套的练习题目,这些习题旨在帮助学习者...在学习过程中,建议结合教材或网络资源,对每个习题进行深入理解和实践,不断反思和总结,这样才能真正提升编程技能。
4. **函数(方法)**:掌握如何定义和调用函数,理解参数传递和返回值。 5. **类与对象**:理解面向对象编程的基础,如类的定义、对象的创建、封装、继承和多态性。 6. **构造器**:学习如何创建和使用构造器初始...
3. **溢出重现**:通过编写特定的输入,尝试触发缓冲区溢出,观察程序的行为变化,如崩溃、异常返回值等。这一步可能需要反复调试和测试。 4. **漏洞利用**:一旦找到溢出点,下一步就是构造恶意输入,使得溢出后的...
第五章可能包括如何定义函数、传递参数、返回值以及使用内置函数如`range()`、`map()`和`filter()`等。 2. **模块导入**:Python的模块系统使得代码复用和组织变得简单。学生可能会遇到如何使用`import`语句导入...
4. **方法**:掌握方法的定义、调用,参数传递,返回值类型以及重载的概念。 5. **数组**:理解一维、多维数组的创建、遍历和操作,包括数组拷贝、排序等。 二、面向对象 6. **类与对象**:理解类的定义,对象的...
在这100道题中,你将学习到函数的定义、参数传递、返回值,甚至包括高阶函数如map()、filter()和reduce()的使用。此外,函数式编程的概念也可能出现在其中,例如闭包和装饰器。 模块化编程是提高代码复用性和可维护...
【VB程序设计基础】 Visual Basic(简称VB)是Microsoft公司推出的一种面向对象的、可视化集成开发环境,它在编程领域中具有广泛的应用。VB以其易学易用的特点,...在每个实验之后进行反思和总结,将使学习效果更佳。
- 学习如何定义和调用函数,理解参数传递和返回值的概念。 - 探究函数的重载,了解方法签名的重要性。 3. **实验3:类与对象** - 理解面向对象编程的核心概念,包括类的定义、对象的创建与销毁。 - 学习封装、...
8. **异常处理**:理解Java的异常体系,如何使用try-catch-finally块来捕获和处理异常。 9. **字符串处理**:Java中String类的使用,包括字符串的创建、比较、截取和拼接等操作。 10. **集合框架**:可能包括...
4. **指针与引用**:理解指针的基本操作,包括解引用、地址运算,以及引用作为函数参数和返回值的使用。 5. **内存管理**:熟悉new和delete操作符,了解动态内存分配和释放,避免内存泄漏。 ### 面向对象编程(OOP...
C++是一种广泛使用的高级编程语言,以其强大的性能、丰富的库支持和面向对象的特性而闻名...在解决这些问题的过程中,不断实践和反思是学习C++的关键,同时,查阅文档和参考书籍,参加编程社区讨论也是进步的有效途径。
3. 方法注释:解释方法的作用、参数和返回值。 4. 行内注释:简洁明了,避免过多的代码解释。 三、代码结构 1. 每个类只做一件事,遵循单一职责原则。 2. 尽量减少类的成员变量,优先考虑局部变量。 3. 避免过长的...
"Python练习册代码"是一个专为学习Python编程者设计的资源集合,主要目的是通过一系列的实践...在学习过程中,不断实践和反思是提升的关键,因为正如其名"Show-Me-the-Code"所示,编写代码是掌握编程语言的最直接途径。
两者都是无返回值的,并且名称与类名相同。 【继承与多态】 继承是面向对象中的一个关键特性,允许一个类(子类)继承另一个类(父类)的属性和行为。这实现了代码的复用,子类可以添加新的功能或重写父类的方法。...
4. **函数**:定义和调用函数,理解参数传递,以及函数返回值的概念。 5. **数组**:创建和操作一维、二维数组,理解数组的本质是内存中连续的数据存储。 6. **类与对象**:定义类,理解封装、继承和多态等面向对象...
4. 函数:理解函数的定义、参数传递、返回值等,掌握递归和高阶函数。 5. 异常处理:知道如何使用try-catch-finally进行异常处理,理解Checked和Unchecked异常的区别。 6. 集合框架:熟练使用ArrayList、LinkedList...
函数的参数传递、返回值、局部和全局变量的理解也是考察的重点。 3. **控制流**:包括条件语句(if-else)和循环(for、while)的使用,可能需要你根据特定条件执行不同操作,或者遍历数据结构执行特定任务。 4. *...
5. **结果与反思**: - 经过上述修改,程序在4小时内的运行不再崩溃,但在遇到IO异常时未能正常响应。 - 进一步分析发现,这是由于`popen`打开文件失败导致循环中一直执行`continue`语句,从而使程序无法执行后续...