return prefix + '$' + Long.toHexString(uid) + '$' + simpleName;
}
protected final void generateUid() {
if (this.uid == 0) {
DigestStream ds = new DigestStream("MD5");
try {
ds.writeUTF(getClass().getName());
writeExternal(ds);
} catch (IOException e) {
throw new IllegalStateException(e);
}
this.uid = ds.digest();
}
}