| 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 7: Operativa |
Subir y bajar la intensidad del color del televisor
Ahora queremos que el Televisor estándar además de ofrecer la operativa de cambiar los canales, también nos permita aumentar y disminuir la intensidad del color. Para ello vamos a crear cuatro nuevos métodos

Este es la implementación de la Clase Televisor
| package paqtvestandar;
public class Televisor { |
Compilamos la Clase Televisor y seguidamente modificamos la clase Aplicacion
| package paqtvestandar; public class Aplicacion { public static void main(String[] args) { Televisor tv; tv = new Televisor(); System.out.println("El canal por defecto es el: " + tv.getCanal()); tv.setCanal(3); System.out.println("El canal seleccionado es el: " + tv.getCanal()); tv.subirCanal(); System.out.println("El canal seleccionado es el: " + tv.getCanal()); tv.bajarCanal(); System.out.println("El canal seleccionado es el: " + tv.getCanal()); Televisor televisor = new Televisor(-5); System.out.println("El canal del segundo televisor es el: " + televisor.getCanal()); System.out.println("El canal seleccionado es el: " + tv.getCanal()); tv.subirColor(); // tv.subirColorAyuda(); } } |
Al ejecutar la Clase Aplicacion vemos los mensajes correspondientes a los métodos subirColor() y subirColorAyuda()

Si descomentamos la invocación al método subirColorAyuda() apuntado por la variable de referencia tv, vamos a poder ver que el compilador se queja (y con razón!) por que estamos intentando acceder a un método de ámbito private

Subir y bajar el volumen del televisor
Según el siguiente Diagrama de Clases de Diseño

vamos a implementa las Clases Televisor y Aplicacion de tal forma que cuando creemos una instancia de Televisor, ésta ya tenga el volumen por defecto en posición 5 sin que se lo tengamos que indicar desde la Clase Aplicacion de forma explícita
Por lo que respecta a la implementación de los métodos subirVolumen() y bajarVolumen(), no tendremos en cuenta los valores negativos ni tampoco el valor máximo del volumen, así que tendremos que implementar estos métodos con el siguiente código
| volumen = volumen + 1 volumen = volumen - 1 |
Desde la Clase Aplicacion tenemos que
