Programación Orientada a Objetos en Java: Clases Animal, Mascota y Clínica Veterinaria con Patrón Fachada

Informática7,56 KB

Programación Orientada a Objetos en Java: Animal, Mascota y Clínica

public class Animal {
protected String especie;

public String getEspecie() {
return especie;
}

public void setEspecie(String especie) {
this.especie = especie;
}

@Override
public String toString() {
return "Animal{" + "especie=" + especie + "mascota" + "}";
}

}

public class AnimalZoo extends Animal {
private String nombreZoo;
private String ciudad;

public AnimalZoo(String nombreZoo, String ciudad) {
this.ciudad = ciudad;
this.nombreZoo = nombreZoo;
}

public String getNombreZoo() {
return nombreZoo;
}

public void setNombreZoo(String nombreZoo) {
this.nombreZoo = nombreZoo;
}

public String getCiudad() {
return ciudad;
}

public void setCiudad(String ciudad) {
this.ciudad = ciudad;
}

@Override
public String toString() {
return "AnimalZoo{" + "nombreZoo=" + nombreZoo + ", ciudad=" + ciudad + '}';
}
}

public class Mascota extends Animal {
private String nombreMascota;
private Persona dueño;
public Mascota() {
super();
}

public String getNombreMascota() {
return nombreMascota;
}

public void setNombreMascota(String nombreMascota) {
this.nombreMascota = nombreMascota;
}

public Persona getDueño() {
return dueño;
}

public void setDueño(Persona dueño) {
this.dueño = dueño;
}

@Override
public String toString() {
return "Mascota{" + "nombreMascota=" + nombreMascota + " cuyo dueño es " + dueño + " " + "y pertenece a la especie: " + especie;
}
}

public class Persona {
private String nombre;
private String apellido;

public String getNombre() {
return nombre;
}

public void setNombre(String nombre) {
this.nombre = nombre;
}

public String getApellido() {
return apellido;
}

public void setApellido(String apellido) {
this.apellido = apellido;
}

@Override
public String toString() {
return nombre + " " + apellido;
}
}

public class Clinicafachada {

public static void main(String[] args) {
Fachada f1 = new Fachada();

f1.CrearClinica();
f1.LISTARDATOSCLINICA();
}

}

public class Fachada {
int n = GestorFachada.peticion();
GestorFachada gf1 = new GestorFachada(n);

public void CrearClinica() {
for (int i = 0; i < n; i++) {
gf1.addMascota(gf1.leeMascota("introduce los datos de la mascota"));
}
}

public void LISTARDATOSCLINICA() {
String[] datosclinica = gf1.listado();
for (String elemento : datosclinica) {
System.out.println(elemento);
}
}

public void LISTAR() {
gf1.listado();
}
}

public class GestorFachada {
int numeroGuardados = 0;
Mascota[] mascota;

public GestorFachada(int tamaño) {
mascota = new Mascota[tamaño];
}

public void addMascota(Mascota mascotas) {
try {
mascota[numeroGuardados] = mascotas;
numeroGuardados++;
} catch (Exception e) {
System.out.println("error, está lleno");
}
}

public String[] listado() {
String array[] = new String[numeroGuardados];
for (int i = 0; i < numeroGuardados; i++) {
array[i] = mascota[i].toString();
}
return array;
}

private static Scanner teclado = new Scanner(System.in);

public static String leeString(String mensaje) {
System.out.println(mensaje);
return teclado.nextLine();
}

public static int leeEntero(String mensaje) {
System.out.println(mensaje);
boolean error;
int numero = 0;
do {
try {
numero = teclado.nextInt();
error = false;
} catch (Exception e) {
System.out.println("error, introduce un número entero");
error = true;
}
teclado.nextLine();
} while (error == true);
return numero;
}

public static Persona LEEPERSONA(String mensaje) {
Persona p = new Persona();
p.setNombre(GestorFachada.leeString("introduce el nombre del dueño"));
p.setApellido(GestorFachada.leeString("introduce el apellido del dueño"));
return p;
}

public static Mascota leeMascota(String mensaje) {
Mascota m = new Mascota();
m.setNombreMascota(GestorFachada.leeString("introduce el nombre de la mascota"));
m.setDueño(GestorFachada.LEEPERSONA("introduce los datos de la persona"));
m.setEspecie(GestorFachada.leeString("introduce la especie a la que pertenece la mascota"));
return m;
}

public static int peticion() {
System.out.println("introduce el número de mascotas a crear");
return GestorFachada.leeEntero("");
}
}

Descargar

PDF Word HTML