Нет, hashcode, в общем, не имеет ничего общего с местоположением памяти. Расположение памяти вашего объекта является ссылкой на объект.
Однако не может быть совершенно невозможно выжать фактическое местоположение. Java hashcode Java Object
, согласно его javadoc, обычно реализуется путем преобразования внутреннего адреса объекта в целое число, но этот метод реализации не требуется языком программирования Java. И есть метод System#identityHashCode(Object)
, который вернет тот же хэш-код для данного объекта, который будет возвращен методом hashCode() по умолчанию (то есть Object
hashCode()). Таким образом, вы действительно сможете получить фактическое местоположение памяти. Но независимо от того, работает ли это, как сказано выше, зависит от реализации. И поскольку вы определенно не сможете напрямую читать/записывать в память, даже если знаете местоположение, что бы вы сделали с этой информацией?
Зачем вам это нужно? –
Как @Valetin предлагает вам не нужно. Если у вас есть очень конкретные причины для этого, например, пишу драйвер устройства, я предлагаю вам использовать JNI с C/C++. –