Ummmmm la primera pregunta que se me ocurre es.... ¿si no sabes el nombre de la variable ni la clase en tiempo de compilación... como vas a compilar la sentencia "NOMBRE.metodo()"?
.
La respuesta a tu pregunta es doble:
.- Puedes usar lenguajes de script (no compilados sino interpretados en ejecucion) para hacer ese tipo de cosas. Si realmente tienes que escribir las sentencias así no puedes usar un lenguaje compilado.
.- Puedes usar Java Reflection para cargar clases en tiempo de ejecución, crear instancias, ejecutar metodos... en tiempo de ejecución, pero eso sí, no puedes escribir así tu programa sino que tienes que adaptarte a lo que sabes en tiempo de compilación. Por ejemplo, no puedes darle un "nombre" a una variable y luego usar ese nombre en el programa, en vez de eso puedes usar un objeto que tendrá tu variable y ejecutar un metodo sobre ese objeto, pero el objeto y su nombre ya se saben en compilación. Es distinto.
Para Java Reflection, aquí:
http://java.sun.com/docs/books/tutor...ect/index.html