viernes, 9 de septiembre de 2016

Ejercicio 3 : Interfaces 1

public interface PuedeNadar {
public void Nadar();
}

-------------------------------------
public interface PuedeVolar {
public void Volar();
}
-------------------------------------
public interface PuedeCaminar {
public void Caminar();
}
-------------------------------------
public abstract class Mamífero implements PuedeCaminar{//Como no se puede generalizar entre mamíferos se le pone abstracto para no implementarlo aquí
public abstract void Caminar();
public abstract void Nadar();
}
-------------------------------------
public abstract class Aves implements PuedeVolar, PuedeCaminar{

public abstract void Volar();
public abstract void Caminar();

}


---------------------------------------------------------------------------------------------------------------
public class Avestruz extends Aves implements PuedeCaminar{

public void Caminar() {
System.out.println("El avestruz está caminando, preparándose para correr");
}
public void Volar(){
System.out.println("El avestruz es un ave que no puede volar, pero si puede correr");
}

}
---------------------------------------------------------------------------------------------------------------
public class Murciélago extends Mamífero implements PuedeVolar{


public void Caminar() {
System.out.println("¡Oh no!, parece que es un murciélago vampiro ! º - º !\n(⊙_◎)\n    ....¡Y está caminando! (✖╭╮✖) ");
}


public void Volar() {
System.out.println("El murciélago está volando, ¡por suerte es un comefruta!(。◕‿◕。) ");
}


public void Nadar() {
}

}
--------------------------------------------------------------------------------------------------------------------------
public abstract class Felino extends Mamífero {


public abstract void Caminar();


public abstract void Nadar();

}

--------------------------------------------------------------------------------------------------------------------------
public class Gato extends Felino {

public void Nadar() {
System.out.println("¡El gato está nadando!");
}


public void Caminar() {
System.out.println("El gato está caminando");
}

}
--------------------------------------------------------------------------------------------------------------------------

public class Loro extends Aves implements PuedeCaminar{

public void Caminar() {
System.out.println("El loro está caminando");
}
public void Volar(){
System.out.println("El loro está volando");
}

}
--------------------------------------------------------------------------------------------------------------------------

public class Tigre extends Felino {
public void Nadar() {
System.out.println("¡El tigre está nadando!");
}


public void Caminar() {
System.out.println("El tigre está caminando");
}
}
--------------------------------------------------------------------------------------------------------------------------
import java.util.Scanner;
public class RumAnimal {
public static void main(String[]args){
Gato g=new Gato();
Loro l=new Loro();
Avestruz a=new Avestruz();
Murciélago m=new Murciélago();
Tigre t=new Tigre();
Scanner sc=new Scanner(System.in);
System.out.println("¡Hola!, bienvenido al menú de los animales, por favor selecciona una de las siguientes opciones:");
System.out.println("<1> Avestruz");
System.out.println("<2> Loro");
System.out.println("<3> Gato");
System.out.println("<4> Murciélago");
System.out.println("<5> Tigre");
int opc= sc.nextInt();
switch(opc){
case 1: System.out.println("Has escogido la avestruz, ahora selecciona qué deseas que haga:");
System.out.println("<1> Caminar");
System.out.println("<2> Volar");
int opc2=sc.nextInt();
switch(opc2){
case 1 : a.Caminar();
break;
case 2: a.Volar();
break;
}
break;
case 2: System.out.println("Has escogido el loro, ahora selecciona qué deseas que haga:");
System.out.println("<1> Caminar");
System.out.println("<2> Volar");
int opc3=sc.nextInt();
switch(opc3){
case 1 : l.Caminar();
break;
case 2: l.Volar();
break;
}
break;
case 3: System.out.println("Has escogido el gato, ahora selecciona qué deseas que haga:");
System.out.println("<1> Nadar");
System.out.println("<2> Caminar");
int opc4=sc.nextInt();
switch(opc4){
case 1 : g.Nadar();
break;
case 2: g.Caminar();
break;
}
break;
case 4: System.out.println("Has escogido el murciélago, ahora selecciona qué deseas que haga:");
System.out.println("<1> Caminar");
System.out.println("<2> Volar");
int opc5=sc.nextInt();
switch(opc5){
case 1 : m.Caminar();
break;
case 2: m.Volar();
break;
}
break;
case 5: System.out.println("Has escogido el tigre, ahora selecciona qué deseas que haga:");
System.out.println("<1> Caminar");
System.out.println("<2> Nadar");
int opc6=sc.nextInt();
switch(opc6){
case 1 : t.Caminar();
break;
case 2: t.Nadar();
break;
}
break;
default: System.out.println("Has escogido una opción errónea.");
}
}
}


No hay comentarios.:

Publicar un comentario