Tengo un pequeña duda existencial en la llamada a una función de una clase creadora desde una clase creada por ella.
Me explico.
Esquemáticamente, estoy utilizando dos clases:
Una clase que gestiona el sistema de monitoreo.
Código:
public Class Sistema {
Detector det = new Detector();
// Otras cosas relacionadas a Sistema
public iniciarDetector() {
new Thread(det).start();
}
public void activarAlarma() {
// Procedimiento de activación de la alarma.
}
// Otras funciones del sistema
}
Y otra clase encargada de la detección de los cambios de temperatura.
Código:
Se asume que la instancia de Sistema se crea en algún otro lugar de la aplicación, así como la llamada a la función iniciarDetector. Adicionalmente, la función activarAlarma no puede ser estática debido a que utiliza datos variables propios de la clase Sistema.public Class Detector extends Runnable{
int temp;
boolean exit=true;
public void run() {
while(exit) {
temp = detectarTemp();
if (temp>50) {
// LLAMAR A FUNCION activarAlarma DE LA CLASE SISTEMA
}
}
}
public int detectarTemp() {
// Detectar Temperatura
}
}
Pues bien, mi duda radica en la forma más adecuada para que, cuando el valor de temp de la clase Detector cambie (if (temp>50)), se informe a la clase Sistema sobre dicho cambio, llamando a la función activarAlarma.
¿Alguna sugerencia?
Gracias de antemano.


