易截截图软件、单文件、免安装、纯绿色、仅160KB

关于JAVA的try catch finally的一个问题

class TestTryFinallyC {
public static void main(String[] args) {
System.out.println(testt());
}

public static int testt() {
int x = 99;
try {
return x;
}finally {
x = 8;
}
}
}

某年某月的某一天,群里一位仁兄发了上边的代码。
结果是出人意料的。
下面我发一下这段代码的JVM完整指令
Compiled from "TestTryFinallyC.java"
class TestTryFinallyC extends java.lang.Object
SourceFile: "TestTryFinallyC.java"
minor version: 0
major version: 50
Constant pool:
const #1 = class #2; // TestTryFinallyC
const #2 = Asciz TestTryFinallyC;
const #3 = class #4; // java/lang/Object
const #4 = Asciz java/lang/Object;
const #5 = Asciz <init>;
const #6 = Asciz ()V;
const #7 = Asciz Code;
const #8 = Method #3.#9; // java/lang/Object."<init>":()V
const #9 = NameAndType #5:#6;// "<init>":()V
const #10 = Asciz LineNumberTable;
const #11 = Asciz LocalVariableTable;
const #12 = Asciz this;
const #13 = Asciz LTestTryFinallyC;;
const #14 = Asciz main;
const #15 = Asciz ([Ljava/lang/String;)V;
const #16 = Field #17.#19; // java/lang/System.out:Ljava/io/PrintStream;
const #17 = class #18; // java/lang/System
const #18 = Asciz java/lang/System;
const #19 = NameAndType #20:#21;// out:Ljava/io/PrintStream;
const #20 = Asciz out;
const #21 = Asciz Ljava/io/PrintStream;;
const #22 = Method #1.#23; // TestTryFinallyC.testt:()I
const #23 = NameAndType #24:#25;// testt:()I
const #24 = Asciz testt;
const #25 = Asciz ()I;
const #26 = Method #27.#29; // java/io/PrintStream.println:(I)V
const #27 = class #28; // java/io/PrintStream
const #28 = Asciz java/io/PrintStream;
const #29 = NameAndType #30:#31;// println:(I)V
const #30 = Asciz println;
const #31 = Asciz (I)V;
const #32 = Asciz args;
const #33 = Asciz [Ljav


相关文档:

使用Java在文件里插入一行

在文件里增加一行的唯一方法就是读取原始文件,然后写入到一个临时文件,同时写入要插入的数据。然后删除原始文件,再把临时文件改名为原始文件名。
package net.java2000.io; 
 
import java.io.BufferedReader; 
import java.io.File; 
import java.io.FileInputStream; 
import jav ......

java(Web)中相对路径,绝对路径问题总结

1.基本概念的理解
  绝对路径:绝对路径就是你的主页上的文件或目录在硬盘上真正的路径,(URL和物理路径)例如:
C:\xyz\test.txt 代表了test.txt文件的绝对路径。http://www.sun.com/index.htm也代表了一个
URL绝对路径。
  相对路径:相对与某个基准目录的路径。包含Web的相对路径(HTML中的相对目录),例如:在 ......

Java clone机制

1、 Java对象赋值
Java代码
Employee e1=
new
 Employee(
"李"
); 
//Employee是一个自定义类 
  
Employee e2=e1; //赋值对象 
  
e2.setName("王"
);
//改变对象e2的名字 
  
System.out.println(e1.getName ......

Java URL正则表达式

 网上转贴的Java正则很让人失望,一篇JavaScript正则集录被很多不负责任的人转来转去,并打上Java正则的标题,汗,真是烂人一堆。
// url正则
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class RegularExpressionTest {

public static void main(String[] args) {

Pa ......

Oracle调用Java代码

 Oracle中可以调用Java的代码,一般通过两种方式进行调用,一个是直接将Java代码写在Oracle内部,另外一种是将编译好的class文件载入到Oracle中。
-A-
1、在SQLPlus中创建Oracle中的Java类与方法(方法必须是静态公有方法)
create or replace and compile java source named hello as
public class Hello {
pu ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号