Ejemplo de como hacer una composición en Java.

Clase Examen package ejemplos_composicion; /** * @author GALIA 11 de marzo 2015 */ public class Examen { /* Atributos privados */ private String asignatura; private String aula; private Fecha fecha; private Hora hora; /** * Constructor * * @param asignatura * @param aula * @param fecha * @param hora */ public Examen(String asignatura, String aula, Fecha fecha, Hora hora) { this.asignatura = asignatura; this.aula = aula; this.fecha = fecha; this.hora = hora; } /* constructor por defecto */ public Examen() { } /** * @return asignatura */ public String getAsignatura() { return asignatura; } /** * @param asignatura */ public void setAsignatura(String asignatura) { this.asignatura = asignatura; } /** * @return aula */ public String getAula() { return aula; } /** * @param aula */ public void setAula(String aula) { this.aula = aula; } /** * @return fecha */ public Fecha getFecha() { return fecha; } public void setFecha(Fecha fecha) { this.fecha = fecha; } /** * @return hora */ public Hora getHora() { return hora; } public void setHora(Hora hora) { this.hora = hora; } /* * (sin Javadoc) * * @see java.lang.Object#toString() */ @Override public String toString() { return "Examen \n[asignatura=" + asignatura + "]\n" + "[ aula=" + aula + "]\n" + fecha.toString() + hora.toString() + "]"; } } Clase Fecha package ejemplos_composicion; /** * @author GALIA 11 de marzo 2015 */ public class Fecha { /* Atributos privados */ private int dia; private int mes; private int año; /* Constructor */ public Fecha(int dia, int mes, int año) { this.setDia(dia); this.setMes(mes); this.setAño(año); } /** * @return día */ public int getDia() { return dia; } /** * @param dia */ public void setDia(int dia) { this.dia = dia; } /** * @return mes */ public int getMes() { return mes; } /** * @param mes */ public void setMes(int mes) { this.mes = mes; } /** * @return año */ public int getAño() { return año; } /** * @param año */ public void setAño(int año) { this.año = año; } @Override public String toString() { return "Fecha [dia=" + dia + ", mes=" + mes + ", año=" + año + "]\n"; } } Clase Hora package ejemplos_composicion; /** * @author GALIA 11 de marzo 2015 */ public class Hora { private int hora; private int minuto; /* Constructor por defecto */ public Hora() { } /* Constructor */ public Hora(int hora, int minuto) { /* se comprueban los valores de la hora */ if (hora < 0 || hora > 23 || minuto < 0 || minuto > 59) { throw new IllegalArgumentException(); } else { this.setHora(hora); this.setMinuto(minuto); } } /** * @return hora */ public int getHora() { return hora; } /** * @param hora */ public void setHora(int hora) { this.hora = hora; } /** * @return minuto */ public int getMinuto() { return minuto; } /** * @param minuto */ public void setMinuto(int minuto) { this.minuto = minuto; } @Override public String toString() { return "Hora [hora=" + hora + ", minuto=" + minuto + ""; } } Clase Main que comprueba todo esto package ejemplos_composicion; /** * @author GALIA 11 de marzo 2015 */ public class Main { public static void main(String[] args) { /* creamos un objeto Examen con el constructor por defecto */ Examen examen = new Examen(); /* creamos dos objetos Fecha y Hora respectivamente */ Fecha fecha = new Fecha(18, 3, 2015); Hora hora = new Hora(18, 25); /* establecemos con los métodos set() los valores de asignatura y aula */ examen.setAsignatura("Programación en Java: UML y Extensión de las clases"); examen.setAula("27"); /* actualizamos la información del objeto Examen */ examen = new Examen((examen.getAsignatura()), (examen.getAula()), fecha, hora); /* devuelve la información del objeto Examen creado */ System.out.println(examen.toString()); } }
Ejemplo de composición Shaum. Extensión de las clases.

1 Response

Hay una clase especial en Java para controlar el tiempo es la : http://docs.oracle.com/javase/7/docs/api/java/sql/Date.html

Write a comment

You can use [html][/html], [css][/css], [php][/php] and more to embed the code. Urls are automatically hyperlinked. Line breaks and paragraphs are automatically generated.