src/org/nutz/repo/org/objectweb/asm/ClassWriter.java
public int newUTF8(final String value) {
        key.set(UTF8, value, null, null);
        Item result = get(key);
        if (result == null) {
            pool.putByte(UTF8).putUTF8(value);
            result = new Item(index++, key);
            put(result);
        }
        return result.index;
    }
public int newUTF8(final String value) {
        key.set(UTF8, value, null, null);
        Item result = get(key);
        if (result == null) {
            pool.putByte(UTF8).putUTF8(value);
            result = new Item(index++, key);
            put(result);
        }
        return result.index;
    }
Adds an UTF8 string to the constant pool of the class being build. Does
nothing if the constant pool already contains a similar item. <i>This
method is intended for {@link Attribute} sub classes, and is normally not
needed by class generators or adapters.</i>

@param value
the String value.
@return the index of a new or already existing UTF8 item.