Supongamos que tengo una clase Java con un método estático, así:¿Qué clase invocó mi método estático?
class A { static void foo() { // Which class invoked me? } }
y supongamos además que la clase A tiene un número arbitrario de subclases:
class B extends A { } class C extends A { } class D extends A { } ...
Consideremos ahora las siguientes invocaciones de métodos :
A.foo(); B.foo(); C.foo(); D.foo(); ...
Mi pregunta es, ¿cómo puede decir qué método foo()
clase está invocando?
Yuck. Funciona; pero la reflexión del IIRC se hizo deliberadamente fea para desalentar este tipo de cosas. – jamesh
Estaba buscando una forma de escribir un método de utilidad estático 'trace (String s)' de modo que, si un método en la clase Foo invocó 'trace (" hi ")', escriba a SYSOUT: ** Foo: hola **. Esto parece hacer el truco. – Chap