Java'nın otomatik kutulamasıyla uğraşmak zorundasın.
Kodu alalım
genel sınıf testi
{
public static void main (String [] değiştirgeler)
{
int i = 3;
Nesne o = i;
dönüş;
}
}
Test.class sınıfını ve javap
-c testini alırsınız, üretilen bayt kodunu inceleyelim.
"Test.java" dan derlenmiştir
public class testi, java.lang.Object {
genel test ();
Kod:
0: aload_0
1: özel # 1'i çağırır; // Yöntem java / lang / Object. "" :() V
4: dönüş
public static void main (java.lang.String []);
Kod:
0: iconst_3
1: istore_1
2: iload_1
3: invokestatik # 2; // Yöntem java / lang / Integer.valueOf: (I) Ljava / lang / Tamsayı;
6: astore_2
7: dönüş
}
Gördüğünüz gibi java derleyicisi eklendi
invokestatic # 2; // Yöntem java / lang / Integer.valueOf: (I) Ljava / lang / Tamsayı;
int'inizden yeni bir Tamsayı oluşturmak ve ardından
o yeni Nesneyi astore_2 aracılığıyla o depolar
int.class.isPrimitive()
verimtrue
;Integer.class.isPrimitive()
verimfalse
.