Я могу получить уникальный идентификатор, например className @ 2345, моего объекта, вызвав его метод toString (), но после перезаписи метода toString (), как я могу получить этот уникальный идентификатор?
Вы можете вызвать System.identityHashCode () и передать свой объект в качестве параметра, тогда вы получите его.
Точнее
obj.getClass().getName() + "@" + Integer.toHexString(System.identityHashCode(obj))
Если вы ищете однострочную реализацию toString (), которая также будет печатать адрес className @, проверьте Apache Commons ToStringBuilder.reflectionToString () . Это вернет строку в формате: className @ address [field1 = value1, field2 = value2, ...]