Hacer un "evento" en una clase
Publicado por Alfonso (2 intervenciones) el 02/08/2017 10:49:07
Hola a todos.
Vengo acostumbrado en programar en C++ y me encuentro con un problema que no sé cómo solucionar o implementar en Java. He googleado mucho pero no encuentro las keyword necesarias para encontrar la solución a mi problema a ver si me podéis ayudar. Os cuento lo que quiero hacer:
Tengo una clase que en una de sus funciones ha de llamar a una función no conocida, que le tendría que pasar otra clase externa, al estilo los eventos del Windows Form (como click, etc)
Es decir; una clase A es llamada desde la clase B, esta clase A empieza a procesar y en un momento dado sucede unas condiciones que genera un evento de forma que se ejecute una función de la clase B.
Remarcar que la clase A no puede conocer a la clase B, ni su estructura, porque será parte de unas librerías a usar en diferentes ámbitos.
¿Cómo podría realizar esto?, googleando me encuentro la opción más común que es realizando una interfaz para la clase B, indicando en esta interfaz la función a llamar, y luego implementarla en una clase que hereda de B, pero este sistema implicaría demasiados cambios en el código y no termino de verla clara. ¿se podría hacer lo de llamar a una función externa o Java tiene limitado eso?
Un saludo y gracias de antemano
A
Vengo acostumbrado en programar en C++ y me encuentro con un problema que no sé cómo solucionar o implementar en Java. He googleado mucho pero no encuentro las keyword necesarias para encontrar la solución a mi problema a ver si me podéis ayudar. Os cuento lo que quiero hacer:
Tengo una clase que en una de sus funciones ha de llamar a una función no conocida, que le tendría que pasar otra clase externa, al estilo los eventos del Windows Form (como click, etc)
Es decir; una clase A es llamada desde la clase B, esta clase A empieza a procesar y en un momento dado sucede unas condiciones que genera un evento de forma que se ejecute una función de la clase B.
Remarcar que la clase A no puede conocer a la clase B, ni su estructura, porque será parte de unas librerías a usar en diferentes ámbitos.
¿Cómo podría realizar esto?, googleando me encuentro la opción más común que es realizando una interfaz para la clase B, indicando en esta interfaz la función a llamar, y luego implementarla en una clase que hereda de B, pero este sistema implicaría demasiados cambios en el código y no termino de verla clara. ¿se podría hacer lo de llamar a una función externa o Java tiene limitado eso?
Un saludo y gracias de antemano
A
Valora esta pregunta


0