คุณต้องจัดการกับการชกมวยอัตโนมัติของ java
ลองใช้รหัส
แบบทดสอบสาธารณะ
{
โมฆะคงที่สาธารณะ main (String [] args)
{
int ผม = 3;
วัตถุ o = i;
กลับ;
}
}
คุณได้รับการทดสอบคลาส test.class และ
javap -cให้คุณตรวจสอบ bytecode ที่สร้างขึ้น
เรียบเรียงจาก "test.java"
การทดสอบระดับสาธารณะขยาย java.lang.Object {
การทดสอบสาธารณะ ();
รหัส:
0: aload_0
1: invokespecial # 1; // วิธี java / lang / Object. "" :() V
4: กลับ
โมฆะคงที่สาธารณะหลัก (java.lang.String []);
รหัส:
0: iconst_3
1: istore_1
2: iload_1
3: invokestatic # 2; // วิธี java / lang / Integer.valueOf: (I) Ljava / lang / Integer;
6: astore_2
7: กลับ
}
ดังที่คุณเห็นคอมไพเลอร์ java เพิ่ม
invokestatic # 2; // วิธี java / lang / Integer.valueOf: (I) Ljava / lang / Integer;
เพื่อสร้าง Integer ใหม่จาก int ของคุณจากนั้นเก็บ
Object ใหม่นั้นไว้ใน o ผ่านทาง astore_2
int.class.isPrimitive()
ผลตอบแทนtrue
; อัตราผลตอบแทนInteger.class.isPrimitive()
false