Es posible obtener el recuento de referencias de objeto?

Me gustaría saber si hay una manera de verificar cuántas referencias tiene un objeto Java. Por lo que pude comprobar, la única forma de hacerlo es usando JVMTI a través de una interfaz JNI. ¿Existe una solución pura de Java (sin usar bibliotecas nativas) para obtener esta información?

Estamos desarrollando una herramienta educativa para la animación de la estructura de datos (para ser utilizada con la implementación de ciertos algoritmos de los estudiantes), por lo que sería muy bueno si pudiéramos verificar los objetos "liberados" de la manera más no intrusiva (estoy intentando para evitar obligar al usuario de esta herramienta a llamar a un método como ObjectReleased (objRef) para actualizar la animación de la estructura de datos para la eliminación de un elemento o algo similar)