Push item from constant pool (wide index)
Bytecode
Type | Description |
u1 | ldc_w opcode = 0x13 (19) |
u2 | index |
Description
ldc_w pushes a one-word constant onto the operand stack. ldc_w
takes a single parameter, <value>, which is the value to push. The
following Java types can be pushed using ldc_w: int, float, String
Pushing a String causes a reference to a java.lang.String object to be constructed and pushed onto the stack. Pusing an int or a float causes a primitive value to be pushed onto the stack.
Exceptions
OutOfMemoryError - not enough memory to allocate a reference to a String
Notes
The ldc_w instruction is identical to the ldc
instruction except for its wider constant pool index.
Where possible, its more efficient to use one of bipush, sipush, or one of the const instructions instead of ldc_w.
If the same string constant (i.e. a string with the same sequence of characters) appears in several different class files, only one String instance is built for that constant. The String.intern() method can be used to retrieve the instance used for a given sequence of characters.