Programmer:
// muhaha
String test = “blahblahblah”;
String str = new String(test + ” is OK” + “, damn it.”);

Compiles to:
JVM INSTR start_warning “Alert! Eden generation, you’ll be shooted with a bunch of temporary Objects!” ;
0:ldc1 #16 <String “blahblahblah”>
2:astore_1
3:new #18 <Class java.lang.String>
6:dup
7:new #20 <Class java.lang.StringBuilder>
10:dup
11:aload_1
12:invokestatic #22 <Method java.lang.String java.lang.String.valueOf(java.lang.Object)>
15:invokespecial #26 <Method void StringBuilder(java.lang.String)>
18:ldc1 #29 <String ” is OK”>
20:invokevirtual #31 <Method java.lang.StringBuilder java.lang.StringBuilder.append(java.lang.String)>
23:ldc1 #35 <String “, damn it.”>
25:invokevirtual #31 <Method java.lang.StringBuilder java.lang.StringBuilder.append(java.lang.String)>
28:invokevirtual #37 <Method java.lang.String java.lang.StringBuilder.toString()>
31:invokespecial #41 <Method void String(java.lang.String)>
34:astore_2
JVM INSTR start_warning “Please the GC thread heal our poor Eden…” ;