java代码:,
byte a_b = 12;
short c_d = 14
在字节码中替换为
bipush 12 // expands byte1 (a byte type) to an int and pushes it onto the stack
sipush 14 // expands byte1, byte2 (a short type) to an int and pushes it onto the stack
为什么 jvm 进行扩展,而不使用 byte & short ?
另外,当我打开文件的字节码时
编辑:short var = 14 被 bipush 14 而不是 sipush 14 取代
是我的理解不清楚还是有错误?
我正在使用以下版本
java version "1.6.0_26"
Java(TM) SE Runtime Environment (build 1.6.0_26-b03)
Java HotSpot(TM) Client VM (build 20.1-b02, mixed mode, sharing)