当前位置:首页 > 开发 > 编程语言 > Java > 正文

javap查看虚拟机为你做了什么

发表于: 2012-12-02   作者:bingyingao   来源:转载   浏览:
摘要: public class Test { public static void main(String[] args) { Integer a = 10; Integer b = 10; System.out.println(a==b); } } >javac Test.java >javap -c Test 可以看到如下:
public class Test {

	public static void main(String[] args) {
		
		Integer a = 10;  
		Integer b = 10;  
		System.out.println(a==b);
	}
}

>javac Test.java
>javap -c Test
可以看到如下:

D:\tejiatrunkspace\DesignPatternDemo\src\com>javap -c Test
Compiled from "Test.java"
public class com.Test extends java.lang.Object{
public com.Test();
  Code:
   0:   aload_0
   1:   invokespecial   #1; //Method java/lang/Object."<init>":()V
   4:   return

public static void main(java.lang.String[]);
  Code:
   0:   bipush  10
   2:   invokestatic    #2; //Method java/lang/Integer.valueOf:(I)Ljava/lang/Int
eger;
   5:   astore_1
   6:   bipush  10
   8:   invokestatic    #2; //Method java/lang/Integer.valueOf:(I)Ljava/lang/Int
eger;
   11:  astore_2
   12:  getstatic       #3; //Field java/lang/System.out:Ljava/io/PrintStream;
   15:  aload_1
   16:  aload_2
   17:  if_acmpne       24
   20:  iconst_1
   21:  goto    25
   24:  iconst_0
   25:  invokevirtual   #4; //Method java/io/PrintStream.println:(Z)V
   28:  return

}

则知道
运行Integer a = 10;  之后,虚拟机做了:
Integer.valueOf()

javap查看虚拟机为你做了什么

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号