¿Hay alguna manera factible de ejecutar mi propio código cada vez que se carga una clase en Java, sin forzar al usuario a cargar todas las clases de forma explícita y manual con un cargador de clases personalizado?¿Cómo puedo ejecutar mi código al cargar la clase?
Sin entrar demasiado en los detalles, cada vez que una clase que implementa una determinada interfaz lee su anotación que lo vincula con otra clase, y le da el par a una tercera clase.
Editar: Diablos, voy a ir a detalles: estoy haciendo una biblioteca de manejo de eventos. Lo que estoy haciendo es hacer que el código del cliente haga sus propios pares de Escucha/Evento, que deben registrarse con mi biblioteca como un par. (hm, eso no fue tan largo después de todo).
Further Edit: Actualmente, el código del cliente necesita registrar el par de clases/interfaces manualmente, lo que funciona bastante bien. Mi intención es automatizar esto, y pensé que vincular las dos clases con anotaciones ayudaría. Luego, quiero deshacerme del código del cliente que necesita mantener la lista de registros actualizada siempre.
PS: El bloque estático no funcionará, ya que mi interfaz está incluida en una biblioteca, y el código del cliente creará más interfaces. Por lo tanto, las clases abstractas tampoco funcionarán, ya que debe ser una interfaz.
Hm, ¿intentó utilizar el bloque de inicialización estática? – Kel