Buscar
Social
Ofertas laborales ES

Foro sobre Java SE > Aplicacion por consola, no puedo manejar fechas

Tengo una clase persona de la cual heredan profesor y alumno... Tiene un atrivuto FechaNacm que es la fecha de nacimiento.
Ademas tengo una clase visor que muestra datos.
package ar.com.gugler.sga.modelo;

import java.awt.print.Printable;
import java.text.Format;
import java.text.SimpleDateFormat;
import java.util.Calendar;

import ar.com.gugler.sga.interfaces.Administrable;

public class Visor {

public static void visualizarDatos(Persona persona){

if (persona instanceof Alumno){
((Alumno) persona).mostrarInformacion(persona.Nombre, persona.Apellido,((Alumno) persona).getNroLegajo());
}
else if (persona instanceof Profesor){
((Profesor) persona).mostrarInformacion(persona.Nombre, persona.Apellido, ((Profesor) persona).getCargo(), ((Profesor) persona).getCargaHorariaSemanal());
}

}

public static void visualizarDatos(Administrable administrable){
if (administrable.existeCupo()==true)
System.out.print("Afirmativo");
else
System.out.print("Negativo");
}
public Visor() {
super();
// TODO Auto-generated constructor stub
}

public void mostrarFechas(Persona P1) {
System.out.println(P1.getFechaNac());

};

}

clase persona:

public class Persona {
protected String Nombre,Apellido;
protected GregorianCalendar fechaNac;
protected String tipoDoc;
protected Long numDoc;
public String getNombre() {
return Nombre;
}
public GregorianCalendar fechaValida(){
GregorianCalendar c = (GregorianCalendar) Calendar.getInstance();


c.add(Calendar.YEAR,-18);


return c;
}
public void setNombre(String nombre) {
Nombre = nombre;
}
public String getApellido() {
return Apellido;
}
public void setApellido(String apellido) {
Apellido = apellido;
}
public GregorianCalendar getFechaNac() {

return fechaNac;
}
public void setFechaNac(GregorianCalendar fechaNac) {
this.fechaNac=fechaNac;
}
public String getTipoDoc() {
return tipoDoc;
}
public void setTipoDoc(String tipoDoc) {
this.tipoDoc = tipoDoc;
}
public Long getNumDoc() {
return numDoc;
}
public void setNumDoc(Long numDoc) {
this.numDoc = numDoc;
}

public String obtenerNombreCompleto(){
/* @param Nombre=es el nombre de la persona
* @param Apellido=es el apellido de la persona
* @return Devuelve el nombre completo
*/
return (Nombre + Apellido);
}
public Persona(){

}
public Persona(String NombreP,String ApellidoP, String tipoDocP, GregorianCalendar fechaNacP
,Long numDocP){
this.Nombre=NombreP;
this.Apellido=ApellidoP;
this.tipoDoc=tipoDocP;



if (fechaNacP.before(this.fechaValida())){
this.fechaNac = fechaNacP;
}else{
System.out.println("usted es menor de edad");
}
this.numDoc=numDocP;

}

}
De que manera se almacena la fecha como atributo en java?

junio 16, 2015 | Registered Commentergiulichajari

Hola giulichajari
Un pequeño ejemplo
class Empleado {
public Empleado(String n, double s, int annio, int mes, int dia) {
nombre = n;
sueldo = s;
GregorianCalendar calendario = new GregorianCalendario(annio, mes - 1, dia);
fechaContrato = calendario.getTime();
}
//get and setters
public String getNombre() {
return nombre;
}
..............//Metodos de tu clase
//Variables de tu clase
private nombre;
.............
}

Clase principal
public class Inicia {
public static void main(String... args) {
ArrayList<Empleado> personal = ArrayList<>(3);
personal.add(new Empleado("Mario gomez", 12000, 1980, 12,14);
personal.add(new Empleado("Juan Zepeda", 10000, 1989, 05,10);
personal.add(new Empleado("Roberto Guzman", 25000, 1992, 04,03);
for(Empleado emp: personal) {
System.out.println("Nombre: " + emp.getNombre()
+ ", sueldo= " + emp.sueldo() +
",Fecha de contrato: " + e.getFechaContrato());
}
}

Ojala que te ayude, en tu duda

junio 17, 2015 | Unregistered Commenterjose