Имеется класс BloodCell
в очень большой и длинной иерархии классов общего назначения. Важно: все классы по своему определяют toString(). Исходный код классов-предков недоступен.
public class BloodCell /*...*/ {
// много кода
public String objToString() {
return Object.super.toString(); // ALARM
}
}
class Tester {
public static void main(String[] args){
var bc = new BloodCell();
System.out.println(bc.objToString());
}
}
Есть большое желание получить тот результат, что выдаётся корневым toString()
. Т.е. хочу увидеть адрес объекта в логическом адресном пространстве.
Вопрос: как это сделать?
Замечание: строка с комментарием "ALARM" выдуманная. Хочется какой-то аналог такого действия.
Integer.toHexString(System.identityHashCode(bc));
Важно понимать, что упомянутый в документации internal address - это не адрес расположения объекта в памяти, это почти случайное число, а расположение объекта в памяти постоянно меняется, при каждой сборке мусора.
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Виртуальный выделенный сервер (VDS) становится отличным выбором
Как из springfox-swagger2 получить yml файл с описанием rest api?
Есть вот такая функция, которая вызывается в главном методе, нужно чтобы она записывала в конец существующего файла некоторый текст, но она...
// Top-level build file where you can add configuration options common to all sub-projects/modules