Autor Tema: Aprender Java desde cero,Clases y métodos abstractos en Java, CU00695B  (Leído 2983 veces)

camoay

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 44
    • Ver Perfil
Buenas noches aquí les dejo mi ejercicio CU00695B del curso de fundamentos de programación  orientada a objetos con Java:


Clase Legislador:

Código: [Seleccionar]
package aprenderaprogramar.java.iniciacion.clase95;

import java.util.Calendar;

public abstract class Legislador {
protected String nombre;
private String provinciaQueRepresenta;
protected String camaraEnQueTrabaja;
private Calendar fechaInicioMandato;

// Constructors
Legislador(){nombre = ""; provinciaQueRepresenta = ""; camaraEnQueTrabaja = ""; fechaInicioMandato = null; }
Legislador(String nombre,String provinciaQueRepresenta,String camaraEnQueTrabaja,Calendar fechaInicioMandato){
this.nombre = nombre;
this.provinciaQueRepresenta = provinciaQueRepresenta;
this.camaraEnQueTrabaja = camaraEnQueTrabaja;
this.fechaInicioMandato = fechaInicioMandato; }

// methods

public abstract String getNombre() ;
public abstract void setNombre(String nombre);
public abstract String getCamaraEnQueTrabaja();
public abstract void setCamaraEnQueTrabaja(String camaraEnQueTrabaja);
public String getProvinciaQueRepresenta() { return provinciaQueRepresenta; }
public void setProvinciaQueRepresenta(String provinciaQueRepresenta) { this.provinciaQueRepresenta = provinciaQueRepresenta;}
public Calendar getFechaInicioMandato() { return fechaInicioMandato; }
public void setFechaInicioMandato(Calendar fechaInicioMandato) { this.fechaInicioMandato = fechaInicioMandato; }

public String toString(){
return "\n   Nombre  : "+nombre+"   Provincia que Representa :"+provinciaQueRepresenta+
   "\n   Camara en que Trabaja : "+camaraEnQueTrabaja+"\n   Fecha Inicio Mandato : "+fechaInicioMandato.getTime();
}// end toString method
}// end class


Clase Diputado:

Código: [Seleccionar]
package aprenderaprogramar.java.iniciacion.clase95;

import java.util.Calendar;

public class Diputado extends Legislador{

// Constructor
Diputado(){ super(); }
Diputado(String nombre,String provinciaQueRepresenta,String camaraEnQueTrabaja,Calendar fechaInicioMandato){
super(nombre,provinciaQueRepresenta,camaraEnQueTrabaja,fechaInicioMandato); }

// métodos implementados de la clase abstracta Legislador
public String getNombre(){ return nombre; }
public void setNombre(String nombre){ super.nombre = nombre;}
public String getCamaraEnQueTrabaja(){ return camaraEnQueTrabaja;}
public void setCamaraEnQueTrabaja(String camaraEnQueTrabaja){ super.camaraEnQueTrabaja = camaraEnQueTrabaja; }
// métodos propios
// sobreescritura de toString()
public String toString(){ return super.toString(); }
}// end class


Clase Senador:

Código: [Seleccionar]
package aprenderaprogramar.java.iniciacion.clase95;

import java.util.Calendar;

public class Senador extends Legislador{

// Constructores
Senador(){ super(); }
Senador(String nombre,String provinciaQueRepresenta,String camaraEnQueTrabaja,Calendar fechaInicioMandato){
super(nombre,provinciaQueRepresenta,camaraEnQueTrabaja,fechaInicioMandato); }

// métodos implementados de la clase abstracta Legislador
public String getNombre(){ return nombre; }
public void setNombre(String nombre){ super.nombre = nombre;}
public String getCamaraEnQueTrabaja(){ return camaraEnQueTrabaja;}
public void setCamaraEnQueTrabaja(String camaraEnQueTrabaja){ super.camaraEnQueTrabaja = camaraEnQueTrabaja; }
// métodos propios
// sobreescritura de toString()
public String toString(){ return super.toString(); }
}// fin de clase



Clase ListaDeLegisladores:


Código: [Seleccionar]
package aprenderaprogramar.java.iniciacion.clase95;

import java.util.ArrayList;

public class ListaDeLegisladores {
private ArrayList<Legislador> listaLegisladores;

// constructors
ListaDeLegisladores(){ listaLegisladores = new ArrayList <Legislador>(); }

// methods
public void añadirLegislador(Legislador legislador){ listaLegisladores.add(legislador); } // añade un legislador a la lista
public void borrarLegislador(Legislador legislador){ listaLegisladores.remove(legislador); }// borra un legislador
public void borrarLegislador(int posicion){ listaLegisladores.remove(posicion); }// borra un legislador en una posición de la lista
public int  buscaLegislador(Legislador legislador){ return listaLegisladores.indexOf(legislador); }//busca un legislador en la lista
public void listadoLegisladores(){ // método que lista todos los legisladores del listin
System.out.println("LISTADO TOTAL LEGISLADORES \n");
for(Legislador tmp: listaLegisladores){
//System.out.println(tmp.getCamaraEnQueTrabaja()+"\n");
String tipolegislador;
if(tmp instanceof Diputado) tipolegislador = "Objeto Diputado:"; else tipolegislador = "Objeto Senador:";
System.out.println(tipolegislador+tmp.toString());
}// end for
}// end listadoProfesores method
public void listadoPorCamara(){ // mñétodo que lista por Cámara
System.out.println("LISTADO DE LEGISLADORES POR CAMARA\n");
for(Legislador tmp: listaLegisladores){
String tipolegislador;
if(tmp instanceof Diputado) tipolegislador = "Objeto Diputado:"; else tipolegislador = "Objeto Senador:";
System.out.println(tipolegislador+" "+tmp.getNombre()+" - "+tmp.getCamaraEnQueTrabaja()+"\n");
}// end for
}// end listadoPorCamara method
} //end class


Clase TestLegisladores:

Código: [Seleccionar]
package aprenderaprogramar.java.iniciacion.clase95;

import java.util.Calendar;

public class TestLegisladores {

public static void main(String[] args) {
// creo 3 Diputados y 3 Senadores
Calendar fecha1 = Calendar.getInstance();
fecha1.set(2016, 11, 1);
Legislador diputado1 = new Diputado("José Rodríguez","Tenerife","Congreso",fecha1);
Calendar fecha2 = Calendar.getInstance();
fecha2.set(2016, 11, 2);
Legislador diputado2 = new Diputado("Francisco La Leche","Gran Canaria","Congreso",fecha2);
Calendar fecha3 = Calendar.getInstance();
fecha3.set(2016, 11, 3);
Legislador diputado3 = new Diputado("Juan Rapadura","La Palma","Congreso",fecha3);
Calendar fecha4 = Calendar.getInstance();
fecha4.set(2016, 11, 4);
Legislador senador1 = new Senador("Ana Bellavista","Tenerife","Senado",fecha4);
Calendar fecha5 = Calendar.getInstance();
fecha5.set(2016, 11, 5);
Legislador senador2 = new Senador("Luis Timanfaya","Lanzarote","Senado",fecha5);
Calendar fecha6 = Calendar.getInstance();
fecha6.set(2016, 11, 6);
Legislador senador3 = new Senador("Sebastián Chipude","La Gomera","Senado",fecha6);
// creo la lista y agrego los legisladores
ListaDeLegisladores lista = new ListaDeLegisladores();
lista.añadirLegislador(diputado1);lista.añadirLegislador(diputado2);lista.añadirLegislador(diputado3);
lista.añadirLegislador(senador1);lista.añadirLegislador(senador2);lista.añadirLegislador(senador3);
// listo los legisladores por la cámara en que trabajan
lista.listadoPorCamara();
// si quiero todos los datos
lista.listadoLegisladores();
}// end main method
}// end class

Agradeceré sus correcciones o sugerencias.
« Última modificación: 18 de Diciembre 2016, 12:35 por Alex Rodríguez »

ESOJ

  • Intermedio
  • ***
  • APR2.COM
  • Mensajes: 143
    • Ver Perfil
Re:Aprender Java desde cero,Clases y métodos abstractos en Java, CU00695B
« Respuesta #1 en: 06 de Diciembre 2016, 06:58 »

camoay

  • Sin experiencia
  • *
  • APR2.COM
  • Mensajes: 44
    • Ver Perfil
Re:Aprender Java desde cero,Clases y métodos abstractos en Java, CU00695B
« Respuesta #2 en: 07 de Diciembre 2016, 10:57 »
Muchas gracias ESOJ.

Saludos,

Alex Rodríguez

  • Moderador Global
  • Experto
  • *******
  • Mensajes: 2050
    • Ver Perfil
Re:Aprender Java desde cero,Clases y métodos abstractos en Java, CU00695B
« Respuesta #3 en: 18 de Diciembre 2016, 12:36 »
Hola, para quienes consulten este ejercicio de camoay, tener en cuenta que la clase import java.util.Calendar; no se ha explicado en el curso, por lo tanto no es necesario su uso.

Saludos

 

Sobre la educación, sólo puedo decir que es el tema más importante en el que nosotros, como pueblo, debemos involucrarnos.

Abraham Lincoln (1808-1865) Presidente estadounidense.

aprenderaprogramar.com: Desde 2006 comprometidos con la didáctica y divulgación de la programación

Preguntas y respuestas

¿Cómo establecer o cambiar la imagen asociada (avatar) de usuario?
  1. Inicia sesión con tu nombre de usuario y contraseña.
  2. Pulsa en perfil --> perfil del foro
  3. Elige la imagen personalizada que quieras usar. Puedes escogerla de una galería de imágenes o subirla desde tu ordenador.
  4. En la parte final de la página pulsa el botón "cambiar perfil".