for (int i = 0; i < fields.length; i++) { long offset = unsafe.objectFieldOffset(fields[i]); // Ensure we got a valid offset value back
assertNotEquals(offset, unsafe.INVALID_FIELD_OFFSET);
// Make sure the field offset is unique for (int j = 0; j < i; j++) {
assertNotEquals(offset, unsafe.objectFieldOffset(fields[j]));
}
}
fields = StaticTest.class.getDeclaredFields(); for (int i = 0; i < fields.length; i++) { long offset = unsafe.staticFieldOffset(fields[i]); // Ensure we got a valid offset value back
assertNotEquals(offset, unsafe.INVALID_FIELD_OFFSET);
// Make sure the field offset is unique for (int j = 0; j < i; j++) {
assertNotEquals(offset, unsafe.staticFieldOffset(fields[j]));
}
}
}
class Test { boolean booleanField; byte byteField; char charField; double doubleField; float floatField; int intField; long longField;
Object objectField; short shortField;
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.