JavaDabbaDoo.org -Tu comunidad Java parlante Fundamentos
Inicio | Cursos infosintesis.net liberados | JavaSE | Iniciación a la Orientación a Objetos paso a paso
Creación de un Televisor estándar
Paso 9: Operativa

Polimorfismo a través de la sobreescritura de método

Cuando al nuevo televisor virtual le desconectamos el sonido, éste se queda en silencio.

Para volver a conectar el sonido simplemente tenemos que invocar al método setSonido(true)

Este es el Diagrama de Clases de Diseño actualizado para esta nueva situación

Este es el código ampliado de la Clase TelevisorVirtual

package paqtvestandar;

public class TelevisorVirtual extends Televisor {
 private boolean sonido = true;

 public TelevisorVirtual() {
 }

 public void setSonido(boolean valorSonido){
  sonido = valorSonido;
 }

 public boolean isSonido(){
  return sonido;
 }

 public void subirVolumen() {
  
super.subirVolumen();
  if (
this.isSonido() == false){
   setSonido(true);
  }
 }

 public void bajarVolumen() {
  
super.bajarVolumen();
  if (!isSonido()){
   setSonido(true);
  }
 }

}

Después de haber añadido el nuevo código compilamos la Clase TelevisorVirtual.

Y este es el código de la Clase Aplicacion que interactúa con una instancia de tipo TelevisorVirtual

package paqtvestandar;
public class Aplicacion {

 public Aplicacion() {
 }

 public static void main(String[] args) {
  TelevisorVirtual tv = new TelevisorVirtual();
  tv.setCanal(3);
  System.out.println("El canal seleccionado es el: " + tv.getCanal());
  tv.subirColor();
  tv.setSonido(false); // Desactivamos el sonido
  System.out.println("El telvisor tiene el sonido: " + tv.isSonido());

  tv.subirVolumen();
  System.out.println("La posición del volumen es: " + tv.getVolumen());
  System.out.println("El televisor tiene el sonido: " + tv.isSonido());

 }
}

Al ejecutar la Clase Aplicacion vemos como el sonido se ha activado por el hecho de haber subido el volumen

Página anterior
Ignasi Pérez Valls
Infosintesis Solutions Group


Diciembre 2008
Dudas y comentarios: Foro [1-02] Iniciación a la Orientación a Objetos
 
 
 
 
JavaDabbaDoo.org
Tu comunidad Java parlante. Cursos abiertos, tutoriales y mucho mucho más ...