
Objetos por referencia
Java
1.332 visualizaciones desde el 27 de Marzo del 2020
Hola. Os subo un código muy útil para las personas que quieran mantener la referencia de un objeto durante el tiempo de ejecución usándolo en múltiples clases.
//De donde queremos instanciar y mantener
public class MediaPlayer {
//Variable de instancia inicializada
private boolean estaReproduciendo = false;
//Metodo que usa la varaible
public void playPause(boolean estaReproduciendo){
this.estaReproduciendo = estaReproduciendo;
}
//Printa la informacion del objeto
@Override
public String toString() {
return "MediaPlayer [estaReproduciendo=" + estaReproduciendo + "]";
}
}
//Clase principal
public class MainActivity {
public static void main(String[] args) {
//Instancia que se usara en comun
MediaPlayer mp = new MediaPlayer();
//Modificamos esta y mostramos su estado
mp.playPause(true);
System.out.println(mp);
//Enviamos i modificamos el estado del objeto enviado
Servicio s = new Servicio(mp);
s.setMp2();
//El resultado modificado desde otra clase
System.out.println("Despues" + mp);
}
}
//Servicio donde se comparte y modifica el estado del objeto
public class Servicio {
//Objeto sin inicializar
private MediaPlayer mp2;
//Constructor
public Servicio(MediaPlayer mp2) {
this.mp2 = mp2;
}
//Modificando el objeto principal
public void setMp2() {
this.mp2.playPause(false);
}
}
Comentarios sobre la versión: 1 (1)