Hola en esta entrada mostrare el ejercicio de las Pruebas de Bebidas en la que se utilizaban partes del código de como preparar un Té y un Café, pero estas son clases incompletas las cuales nosotros tenemos que darles los valores adecuados, y acomodarlas según sea necesario.
Como ya mencioné son clases separadas las cuales debemos implementar, y ¿Como las implementamos si no están completas? Pues en parte tiene que ver mucho el tema de "Superclases" y subclases, las cuales para poder utilizarlas debemos agregar el "abstract" a la "superclase" para que, en este caso java, sepa que no están completas.
Bueno primero especificamos que la superclase se hereda, e implementamos los métodos del tipo abstracto:
public abstract class BebidaCafeinada
{
public final void prepararReceta()
{
hervir();
poner();
servir();
agregaCondimentos();
System.out.println();
}
public abstract void poner();
public abstract void agregaCondimentos();
public void hervir()
{
System.out.println("Hirviendo el Agua");
}
public void servir()
{
System.out.println("Sirviendo");
}
}
Aquí tenemos la superclase, de esta se heredan los metodos "poner" y "agregaCondimentos"
Después tenemos las bebidas que mencionamos hay que darles sus algoritmos, la superclase se encarga de controlar el proceso.
public class Cafe extends BebidaCafeinada
{
public void poner()
{
System.out.println("Poniendo el Cafe");
}
public void agregaCondimentos()
{
System.out.println("Agregando Azucar y Leche");
}
}
Esta es la clase Café, que continua con el programa utilizando herencia.
public class Te extends BebidaCafeinada
{
public void poner()
{
System.out.println("Poniendo el Te");
}
public void agregaCondimentos()
{
System.out.println("Agregando limon");
}
}
Esta es parecida a la del Café, pero se llama "Te"
public class PruebaBebidas
{
public static void main(String[] args)
{
Te elTe = new Te();
Cafe elCafe = new Cafe();
System.out.println("Preparando el Te");
elTe.prepararReceta();
System.out.println("Preparando el Cafe");
elCafe.prepararReceta();
}
}
Por ultimo esta clase se encarga de hacer la prueba y mostrar los resultados en conjunto.
Bien ahora hacemos la prueba:
Primero vamos al directorio donde tenemos las clases, como son varios archivos ".java", podemos hacer uso del comando "javac *.java" para compilar todos de una sola vez.
Y ahora lo ejecutamos:
Y así es como termina, todo esto es buen motivo para aprender que cualquier código puede reutilizarse e implementarse como tipo abstracto, solo hace falta dar los valores a las variables y demás detalles estéticos.
Utilizando esta manera de programar es mas sencillo implementar otros tipos de clases que se ajusten al método.
No hay comentarios:
Publicar un comentario