在Java中的String类的修剪方法包含此:避免getfield命令的操作码
int off = offset; /* avoid getfield opcode */
char[] val = value; /* avoid getfield opcode */
我有点被评论不解 “避免getfield命令代码” ...
什么意思是不是? (我把它这样就避免了在字节码使用getfield命令的,但为什么这是一件好事[TM]?)
它是防止创建对象的情况下,修剪没有做任何事情(因此这个被返回)还是?
该注释不适用于'len',因为len在该方法中被主动修改,所以它必须是本地变量。另一方面,'off'和'val'没有被修改,但仅仅为优化而存在。 – Lars 2011-01-21 17:27:39
@Lars:斑点;我没有看到len的变化。 – 2011-01-21 17:30:27