java class 字符串_Java .Class文件更改字符串

我通过一个小调整两次编译同一个类,首先是“foo”,然后是“foo-bar”

public class HelloWorld {

public static final String HELLO = "foo-bar";

}

用“foo”

000000b0 74 01 00 **03** 66 6f 6f 00 21 00 02 00 03 00 00 00 |t...foo.!.......|

000000c0 01 00 19 00 04 00 05 00 01 00 06 00 00 00 02 00 |................|

000000d0 07 00 01 00 01 00 08 00 09 00 01 00 0a 00 00 00 |................|

000000e0 1d 00 01 00 01 00 00 00 05 2a b7 00 01 b1 00 00 |.........*......|

000000f0 00 01 00 0b 00 00 00 06 00 01 00 00 00 01 00 01 |................|

00000100 00 0c 00 00 00 02 00 0d |........|

随着“foo-bar”

000000b0 74 01 00 **07** 66 6f 6f 2d 62 61 72 00 21 00 02 00 |t...foo-bar.!...|

000000c0 03 00 00 00 01 00 19 00 04 00 05 00 01 00 06 00 |................|

000000d0 00 00 02 00 07 00 01 00 01 00 08 00 09 00 01 00 |................|

000000e0 0a 00 00 00 1d 00 01 00 01 00 00 00 05 2a b7 00 |.............*..|

000000f0 01 b1 00 00 00 01 00 0b 00 00 00 06 00 01 00 00 |................|

00000100 00 01 00 01 00 0c 00 00 00 02 00 0d |............|

并且使用300个字符的字符串,前两个字节是01 2c.

因此,如果“引力引擎关闭”是29个字符长,我会确保你将字符串前面的字节更改为1D,它当前应为19(“引力引擎关/开”为25个字符)

你可能感兴趣的:(java,class,字符串)